場景光源
根據預設,遠端轉譯的物件會使用天空光源來點亮。 對於大部分的應用程式而言,靜態天空光源已經足夠,但您可以進一步將動態光源新增至場景。
注意
目前不支援轉換陰影。 Azure 遠端轉譯已最佳化以轉譯大量的幾何,並視需要使用多個 GPU。 陰影轉換的傳統方法在這類情況下無法發揮良好作用。
常見的光線元件屬性
所有光線類型都衍生自抽象基底類別 LightComponent
,並共用這些屬性:
顏色:Gamma 空間中光線的色彩。 Alpha 會遭到忽略。
強度:光線的亮度。 如果是點光線和聚光光線,強度也會決定光線照射的距離。
點光線
在 Azure 遠端轉譯中,PointLightComponent
不僅可以從單一點發出光線,也可以從小型球體或小型燈管發出光線,以模擬較柔和的光源。
PointLightComponent 屬性
半徑:預設半徑為零,在此案例下,光線會以點光線形式射出。 如果半徑大於零,光線則會以球面光源形式射出,這會改變反射最亮處的外觀。
長度:如果
Length
和Radius
都非零,光線會以燈管形式射出。 這個組合可用來模擬霓紅燈管。AttenuationCutoff:如果左至(0,0),光線的衰減只取決於它的
Intensity
。 不過,您可以提供自訂最小/最大距離,讓光線的強度以線性方式相應縮小為 0。 此功能可用來強制套用特定光線較小範圍的影響。ProjectedCubemap:如果設為有效的立方體貼圖,紋理會投影到光線周圍的幾何上。 立方體貼圖的色彩會依光線的色彩調整。
聚光光線
SpotLightComponent
與 PointLightComponent
類似,但光線只能以圓錐形呈現。 圓錐的方向是由擁有者實體的負 Z 軸而定義。
SpotLightComponent 屬性
半徑:與
PointLightComponent
相同。SpotAngleDeg:此間隔會定義以度為單位測量的內外圓錐體角度。 內角中的所有項目會完全變亮。 盛開會套用至可產生類似半影效果的外角。
FalloffExponent:定義內外圓錐體角度之間的盛開轉換程度。 較高的值會產生更銳利的轉換。 預設值為 1.0 會產生線性轉換。
AttenuationCutoff:與
PointLightComponent
相同。Projected2dTexture:如果設為有效的 2D 紋理,影像會投影到光線照射的幾何上。 紋理的色彩會依光線的顏色調整。
定向光線
DirectionalLightComponent
會模擬無限遠的光源。 光線會照射到擁有者實體的負 Z 軸方向。 實體的位置遭忽略。
沒有其他屬性。
效能考量
光源可能會對轉譯效能造成重大影響。 請謹慎使用光源,並只在應用程式需要時才使用。 任何靜態全域光源條件,包括靜態方向元件,都可以使用自訂的天空紋理來實現,不需要額外支付轉譯費用。
API 文件
- C# LightComponentBase 類別
- C# PointLightComponent 類別
- C# SpotLightComponent 類別
- C# DirectionalLightComponent 類別
- C++ LightComponentBase 類別
- C++ PointLightComponent 類別
- C++ SpotLightComponent 類別
- C++ DirectionalLightComponent 類別