Aracılığıyla paylaş


Kabuk işleme

Hiyerarşik durum geçersiz kılma bileşeninin kabuk durumu bir saydamlık etkisidir. Gözden geçirilmiş işlemenin aksine, yalnızca nesnelerin en öndeki katmanı görünür ve opak işlemeye benzer. Ayrıca, nesnelerin normal görünümü kabuk olarak işlendiğinde değiştirilebilir. Bu etki, kullanıcının tüm sahne için uzamsal farkındalığı korurken önemli olmayan kısımlardan görsel olarak yönlendirilmesi gereken kullanım durumlarına yöneliktir.

Genel durum aracılığıyla ShellRenderingSettings kabuk tarafından işlenen nesnelerin görünümünü yapılandırabilirsiniz. Kabuk işleme kullanan tüm nesneler aynı ayarı kullanır. Nesne başına parametre yoktur.

Dekont

Kabuk işleme efekti, nokta bulutlarına uygulanamaz.

ShellRendering Ayarlar parametreleri

Sınıfı ShellRenderingSettings , genel kabuk işleme özellikleriyle ilgili ayarları barındırır:

Parametre Türü Tanım
Desaturation kayan noktalı sayı Normal son nesne rengine uygulanacak, 0 (doygunlaştırma yok) ile 1 (tam doygunlaştırma) aralığında uygulanacak doygunlaştırma miktarı
Opacity kayan noktalı sayı Kabuk tarafından işlenen nesnelerin 0 (görünmez) ile 1 (tamamen opak) aralığındaki opaklığı

Ayrıca, bir sahnenin tamamına uygulandığında parametrelerin etkilerinin örnekleri için aşağıdaki tabloya bakın:

0 0.25 0,5 0,75 1.0
Doygunlaştırma Desaturation-0.0 Desaturation-0.25 Desaturation-0.5 Desaturation-0.75 Desaturation-1.0
Opak -lık Opacity-0.0 Opacity-0.25 Opacity-0.5 Opacity-0.75 Opacity-1.0

Kabuk efekti, sahnenin işleneceği son opak renge uygulanır. Buna ton hiyerarşik durum geçersiz kılma da dahildir.

Örnek

Aşağıdaki kod, API aracılığıyla durumun örnek kullanımını ShellRenderingSettings gösterir:

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);
}

Performans

Kabuk işleme özelliği, standart opak işlemeye kıyasla küçük bir sabit ek yük taşır. Nesneler üzerinde saydam malzemeler kullanmaktan veya gözden geçirerek işlemeden önemli ölçüde daha hızlıdır. Sahnenin yalnızca bazı bölümleri kabuk işlemeye geçirilirse performans daha güçlü bir şekilde düşebilir. Bu düşüş, ek olarak ortaya çıkan ve işleme gerektiren nesneler nedeniyle oluşabilir. Bu bağlamda performans, Kesme düzlemleri özelliğine benzer şekilde davranır.

Sonraki adımlar