Attention: Here be dragons
This is the latest
(unstable) version of this documentation, which may document features
not available in or compatible with released stable versions of Godot.
Checking the stable version of the documentation...
VoxelGIData¶
继承: Resource < RefCounted < Object
包含用于 VoxelGI 节点的烘焙体素全局光照数据。
描述¶
VoxelGIData 包含烘焙的体素全局照明,用于 VoxelGI 节点。VoxelGIData 还提供了若干用来调整全局照明最终外观的属性。这些属性可以在运行时调整,无须再次烘焙 VoxelGI 节点。
注意:为了防止基于文本的场景文件(.tscn
)过度增长,导致加载和保存速度变慢,请始终将 VoxelGIData 保存为外部二进制资源文件(.res
),不要将其嵌入到场景中。做法是点击 VoxelGIData 资源旁边的下拉箭头,选择编辑,点击检查器顶部的软盘图标,然后选择另存为...。
教程¶
属性¶
|
||
|
||
|
||
|
||
|
||
|
||
|
方法¶
void |
allocate(to_cell_xform: Transform3D, aabb: AABB, octree_size: Vector3, octree_cells: PackedByteArray, data_cells: PackedByteArray, distance_field: PackedByteArray, level_counts: PackedInt32Array) |
get_bounds() const |
|
get_data_cells() const |
|
get_level_counts() const |
|
get_octree_cells() const |
|
get_octree_size() const |
|
get_to_cell_xform() const |
属性说明¶
间接光照和反射所使用的法线偏移。较高的值可以减少非粗糙材质中可见的自反射,但会增加光线泄漏并让间接光照看上去更扁平。如果要优先隐藏自反射而不是追求光照质量,请将 bias 设为 0.0
,并将 normal_bias 设为 1.0
和 2.0
之间的值。
要使用的动态范围(1.0
代表低动态范围场景亮度)。较高的值可用于提供更明亮的间接光照,但会在较暗的区域产生更多可见的色带效果(包括间接光照和反射)。为了避免色带效果,建议将其设置得尽可能低,避免出现明显的亮度截断。
VoxelGI 节点产生的间接照明和反射的能量。值越高,间接照明越亮。如果间接照明看起来过于平坦,请尝试减少 propagation,同时增加 energy。另请参阅影响间接照明有效亮度的 use_two_bounces。
如果为 true
,则 VoxelGI 节点会忽略 Environment 光照。如果为 false
,则 VoxelGI 节点会考虑 Environment 光照。Environment 光照会实时更新,这意味着无需再次烘焙 VoxelGI 节点即可对其进行更改。
用于间接照明和反射的法线偏置。较高的值能够减少在非粗糙材质中可见的自反射,但会导致更多可见的漏光问题,间接照明看起来也会更平坦。另见 bias。要优先隐藏自反射,而不是提高照明质量,请将 bias 设置为 0.0
,并将 normal_bias 设置为介于 1.0
和 2.0
之间的值。
当光线从表面反弹时使用的乘数。较高的值会导致更亮的间接照明。如果间接照明看起来过于平坦,请尝试减少 propagation 同时增加 energy。另请参阅影响间接照明的有效亮度的 use_two_bounces。
如果为 true
,则执行两次间接照明反弹而不是一次。这使得以一个较低的性能成本,使间接照明看起来更自然、更明亮。第二次反弹在反射中也是可见的。如果启用 use_two_bounces 后场景显得太亮,请调整 propagation 和 energy。
方法说明¶
void allocate(to_cell_xform: Transform3D, aabb: AABB, octree_size: Vector3, octree_cells: PackedByteArray, data_cells: PackedByteArray, distance_field: PackedByteArray, level_counts: PackedInt32Array) 🔗
该方法目前没有描述,请帮我们贡献一个吧!
返回一个 AABB,表示已烘焙体素数据的边界,烘焙后应该与 VoxelGI.size 相匹配(仅包含表示大小的 Vector3)。
注意:如果修改了大小但没有对 VoxelGI 数据进行烘焙,则 get_bounds 和 VoxelGI.size 的值将不匹配。
PackedByteArray get_data_cells() const 🔗
该方法目前没有描述,请帮我们贡献一个吧!
PackedInt32Array get_level_counts() const 🔗
该方法目前没有描述,请帮我们贡献一个吧!
PackedByteArray get_octree_cells() const 🔗
该方法目前没有描述,请帮我们贡献一个吧!
Vector3 get_octree_size() const 🔗
该方法目前没有描述,请帮我们贡献一个吧!
Transform3D get_to_cell_xform() const 🔗
该方法目前没有描述,请帮我们贡献一个吧!