浏览代码

HDRP: Better fix for late init of reflection probe

/main
sebastienlagarde 6 年前
当前提交
a747dde7
共有 3 个文件被更改,包括 5 次插入15 次删除
  1. 14
      com.unity.render-pipelines.high-definition/HDRP/Lighting/LightLoop/LightLoop.cs
  2. 2
      com.unity.render-pipelines.high-definition/HDRP/Lighting/Reflection/HDProbe.cs
  3. 4
      com.unity.render-pipelines.high-definition/HDRP/Lighting/Reflection/ProbeWrapper.cs

14
com.unity.render-pipelines.high-definition/HDRP/Lighting/LightLoop/LightLoop.cs


s_LightVolumeDataBuffer.SetData(m_lightList.lightVolumes);
}
HDAdditionalReflectionData GetHDAdditionalReflectionData(VisibleReflectionProbe probe)
{
var add = probe.probe.GetComponent<HDAdditionalReflectionData>();
if (add == null)
{
add = HDUtils.s_DefaultHDAdditionalReflectionData;
Vector3 distance = Vector3.one * probe.blendDistance;
add.influenceVolume.boxBlendDistancePositive = distance;
add.influenceVolume.boxBlendDistanceNegative = distance;
add.influenceVolume.shape = Shape.Box;
}
return add;
}
HDAdditionalLightData GetHDAdditionalLightData(VisibleLight light)
{
var add = light.light.GetComponent<HDAdditionalLightData>();

2
com.unity.render-pipelines.high-definition/HDRP/Lighting/Reflection/HDProbe.cs


set { m_RefreshMode = value; }
}
void Awake()
internal void Awake()
{
if (influenceVolume == null)
influenceVolume = new InfluenceVolume(this);

4
com.unity.render-pipelines.high-definition/HDRP/Lighting/Reflection/ProbeWrapper.cs


if (add == null)
{
add = HDUtils.s_DefaultHDAdditionalReflectionData;
if (add.influenceVolume == null)
{
add.Awake();
}
Vector3 distance = Vector3.one * probe.blendDistance;
add.influenceVolume.boxBlendDistancePositive = distance;
add.influenceVolume.boxBlendDistanceNegative = distance;

正在加载...
取消
保存