Ana hattı işleme
Seçilen nesneler, Hiyerarşik durum geçersiz kılma bileşeni aracılığıyla ana hat işleme eklenerek görsel olarak vurgulanabilir. Bu bölümde, ana hat işlemeye yönelik genel parametrelerin istemci API'si aracılığıyla nasıl değiştirildiği açıklanmaktadır.
Ana hat özellikleri genel bir ayardır. Ana hat işleme kullanan tüm nesneler aynı ayarı kullanır; nesne başına ana hat rengi kullanmak mümkün değildir.
Not
Ana hat işleme efekti, nokta bulutlarına uygulanamaz.
için parametreler OutlineSettings
Sınıf OutlineSettings
, genel ana hat özellikleriyle ilgili ayarları barındırır. Aşağıdaki üyeleri kullanıma sunar:
Parametre | Tür | Açıklama |
---|---|---|
Color |
Color4Ub | Ana hattı çizmek için kullanılan renk. Alfa bölümü yoksayılır. |
PulseRateHz |
kayan noktalı sayı | Ana hattın saniye başına salınım hızı |
PulseIntensity |
kayan noktalı sayı | Ana hat darbe etkisinin yoğunluğu. 0,0 ile zonklama olmaması için 1,0 arasında olmalıdır. Yoğunluk, seviyelendirmenin en düşük opaklığını örtük olarak olarak MinOpacity = 1.0 - PulseIntensity ayarlar. |
MaskTexture |
2B doku | Belirtilirse, ana hattın rengi bu doku tarafından renklenir. Doku, ekran alanı koordinatlarında örneklenmiş ve çeşitli parametreler (MaskScale , MaskScaleToFit , MaskOffset , MaskScrollSpeed , MaskRotationCenter , , MaskRotationAngle ), MaskRotationSpeed bu eşlemenin esnetilmesini, döndürülmesine ve kaydırılmasına etki eder. Bu özellik, renk gradyanı veya kesikli ana hatlar gibi efektler elde etmek için kullanılabilir. Aşağıdaki ikinci örnek resme bakın. |
Parametreyi
color
sarıdan (soldan) eflatun (ortada) ve pulseIntensity
0'dan 0,8'e (sağ) değiştirmenin etkisi.
Ana hatlara maske dokusu uygulamanın etkisi: Şeritli döşeme dokusu (sağ) kullanılarak benzetimi yapılan ekran hizalı renk gradyanları (sol) veya kesikli ana hatlar.
Örnek
Aşağıdaki kod, API aracılığıyla ana hat parametrelerini ayarlamaya yönelik bir örnek gösterir:
void SetOutlineParameters(RenderingSession session)
{
OutlineSettings outlineSettings = session.Connection.OutlineSettings;
outlineSettings.Color = new Color4Ub(255, 255, 0, 255);
outlineSettings.PulseRateHz = 2.0f;
outlineSettings.PulseIntensity = 0.5f;
}
void SetOutlineParameters(ApiHandle<RenderingSession> session)
{
ApiHandle<OutlineSettings> outlineSettings = session->Connection()->GetOutlineSettings();
Color4Ub outlineColor;
outlineColor.channels = { 255, 255, 0, 255 };
outlineSettings->SetColor(outlineColor);
outlineSettings->SetPulseRateHz(2.0f);
outlineSettings->SetPulseIntensity(0.5f);
}
Performans
Ana hat işlemenin işleme performansı üzerinde önemli bir etkisi olabilir. Bu etki, belirli bir çerçeve için seçilen ve seçilmemiş nesneler arasındaki ekran uzayı uzamsal ilişkisine göre değişir.
API belgeleri
Sonraki adımlar
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin