FogVolume
繼承: VisualInstance3D < Node3D < Node < Object
從世界環境貢獻預設體積霧的區域。
說明
FogVolume 用於將局部霧新增到全域體積霧效果中。如果使用具有負 FogMaterial.density 的 FogMaterial,FogVolume 也可以從特定區域移除體積霧。
FogVolume 的性能與它在螢幕上的相對大小以及它所附加的 FogMaterial 的複雜性直接相關。最好盡可能保持 FogVolume 相對較小且簡單。
注意:FogVolume 只有在 Environment.volumetric_fog_enabled 為 true 時才會有可見效果。如果不希望霧全域可見(而只是在 FogVolume 節點內),請將 Environment.volumetric_fog_density 設定為 0.0。
教學
屬性
|
||
|
屬性說明
FogVolume 使用的 Material。可以是一個內建的 FogMaterial 或一個自訂的 ShaderMaterial。
FogVolumeShape shape = 3 🔗
void set_shape(value: FogVolumeShape)
FogVolumeShape get_shape()
FogVolume 的形狀。這可以被設定為 RenderingServer.FOG_VOLUME_SHAPE_ELLIPSOID、RenderingServer.FOG_VOLUME_SHAPE_CONE、RenderingServer.FOG_VOLUME_SHAPE_CYLINDER、RenderingServer.FOG_VOLUME_SHAPE_BOX 或 RenderingServer.FOG_VOLUME_SHAPE_WORLD。
Vector3 size = Vector3(2, 2, 2) 🔗
當 shape 為 RenderingServer.FOG_VOLUME_SHAPE_ELLIPSOID、RenderingServer.FOG_VOLUME_SHAPE_CONE、RenderingServer.FOG_VOLUME_SHAPE_CYLINDER 或 RenderingServer.FOG_VOLUME_SHAPE_BOX時,該 FogVolume 的大小。
注意:當相機移動或旋轉時,薄霧體積可能會出現閃爍。這可以通過增加 ProjectSettings.rendering/environment/volumetric_fog/volume_depth(以性能為代價)或減少 Environment.volumetric_fog_length(無性能成本,但以降低霧的範圍為代價)來緩解。或者,FogVolume 可以做得更厚,並在 material 中使用較低的密度。
注意:如果 shape 為 RenderingServer.FOG_VOLUME_SHAPE_CONE 或 RenderingServer.FOG_VOLUME_SHAPE_CYLINDER,圓錐體/圓柱體將被調整以適應該大小。不支援通過 size 屬性對圓錐體/圓柱體形狀進行非均勻縮放,但可以改為縮放該 FogVolume 節點。