Megosztás a következőn keresztül:


Shell-renderelés

A hierarchikus állapot felülbírálási összetevő felületállapota áttetszőségi effektus. Az átlátszatlan megjelenítéssel ellentétben csak az objektumok előtérrétege látható, az átlátszatlan megjelenítéshez hasonló módon. Emellett az objektumok normál megjelenése is módosítható, ha a rendszerhéjként jelenik meg. A hatás olyan használati esetekre szolgál, amikor a felhasználót vizuálisan el kell irányítani a nem fontos részektől, miközben továbbra is fenntartja a térbeli tudatosságot az egész jelenetben.

A rendszerhéj által renderelt objektumok megjelenését a ShellRenderingSettings globális állapoton keresztül konfigurálhatja. A rendszerhéj-renderelést használó összes objektum ugyanazt a beállítást fogja használni. Objektumparaméterenként nincsenek.

Megjegyzés:

A rendszerhéj-renderelési effektus nem alkalmazható a pontfelhőkre.

ShellRendering Gépház paraméterek

Az osztály ShellRenderingSettings a globális rendszerhéj renderelési tulajdonságaihoz kapcsolódó beállításokat tartalmazza:

Paraméter Típus Description
Desaturation float A szokásos végső objektumszínre alkalmazandó desaturáció mennyisége 0 (nincs deszaturálás) és 1 (teljes deszaturáció) tartományban
Opacity float A rendszerhéj által renderelt objektumok átlátszatlansága 0 (láthatatlan) és 1 közötti tartományban (teljesen átlátszatlan)

Tekintse meg az alábbi táblázatot is, amely példákat tartalmaz a paraméterek hatásaira egy teljes jelenetre alkalmazva:

0 0,25 0,5 0,75 1,0
Desaturation Desaturation-0.0 Desaturation-0.25 Desaturation-0.5 Desaturation-0.75 Desaturation-1.0
Opacitás Opacity-0.0 Opacity-0.25 Opacity-0.5 Opacity-0.75 Opacity-1.0

A rendszerhéj-effektus a jelenet utolsó átlátszatlan színére lesz alkalmazva, ellenkező esetben. Ebbe beletartozik a színárnyalat hierarchikus állapotának felülbírálása.

Example

Az alábbi kód egy példa az állapot API-val történő használatára ShellRenderingSettings :

void SetShellSettings(RenderingSession session)
{
    ShellRenderingSettings shellRenderingSettings = session.Connection.ShellRenderingSettings;
    shellRenderingSettings.Desaturation = 0.5f;
    shellRenderingSettings.Opacity = 0.1f;
}
void SetShellSettings(ApiHandle<RenderingSession> session)
{
    ApiHandle<ShellRenderingSettings> shellRenderingSettings = session->Connection()->GetShellRenderingSettings();
    shellRenderingSettings->SetDesaturation(0.5f);
    shellRenderingSettings->SetOpacity(0.1f);
}

Teljesítmény

A rendszerhéj renderelési funkciója kis állandó többletterhelést hordoz a standard átlátszatlan rendereléshez képest. Ez jelentősen gyorsabb, mint átlátszó anyagok használata objektumokon vagy átlátszatott renderelés. A teljesítmény erősebben csökkenhet, ha a rendszer csak a jelenet egyes részeit váltja át a rendszerhéj-renderelésre. Ez a leromlás a renderelést igénylő, további feltárt objektumok miatt fordulhat elő. Ebben a tekintetben a teljesítmény a Kivágás síkok funkcióhoz hasonlóan viselkedik .

Következő lépések