版本: Unity 6 (6000.0)
语言英语
  • C#

IProbePostProcessor.ConvertToUnityFormat

建议更改

成功!

感谢您帮助我们提高 Unity 文档的质量。尽管我们无法采纳所有提交内容,但我们确实会阅读用户提出的每个建议更改,并在适用情况下进行更新。

关闭

提交失败

由于某些原因,您的建议更改无法提交。请<a>稍后再试</a>。感谢您抽出时间帮助我们提高 Unity 文档的质量。

关闭

取消

声明

public bool ConvertToUnityFormat(LightTransport.IDeviceContext context, BufferSlice<SphericalHarmonicsL2> irradianceIn, BufferSlice<SphericalHarmonicsL2> irradianceOut, int probeCount);

参数

context 设备上下文。
irradianceIn 包含输入辐照度的缓冲区。
irradianceOut 输出缓冲区,包含转换为与 Unity 渲染器兼容的格式后的辐照度数组。
probeCount 要转换的 SphericalHarmonicsL2 探测器的数量。

返回值

bool 如果操作已成功添加到上下文的命令队列中,则返回 True。

描述

将编码为 SphericalHarmonicsL2 的光探测器转换为 Unity 渲染器期望的格式。

当与 Unity 渲染器一起使用时,辐照度 SphericalHarmonicsL2 光探测器必须满足以下条件:1) 对于 L0 和 L1,系数必须包含 SH 标准归一化项(以避免在着色器中进行此乘法)。2) 由于兼容性原因,系数必须除以 Pi (π)。3) L1 必须按 yzx 顺序排列(而不是 xyz)。在 GetShaderConstantsFromNormalizedSH 函数中,在将 SphericalHarmonicsL2 探测器传递到着色器之前,顺序会立即翻转。