Skip to content

Commit 4d3f08b

Browse files
urasmusEvergreen
authored andcommitted
Fix PS5 shader compilation error in Surface Cache
1 parent edaf6f2 commit 4d3f08b

1 file changed

Lines changed: 9 additions & 8 deletions

File tree

  • Packages/com.unity.render-pipelines.core/Runtime/Lighting/SurfaceCache

Packages/com.unity.render-pipelines.core/Runtime/Lighting/SurfaceCache/Estimation.hlsl

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -75,12 +75,12 @@ void ProcessAndStoreRadianceSample(RWStructuredBuffer<SphericalHarmonics::RGBL1>
7575
patchStatistics[patchIdx] = newStats;
7676
}
7777

78-
void ProjectAndAccumulate(inout SphericalHarmonics::RGBL1 accumulator, float3 sample, float3 direction)
78+
void ProjectAndAccumulate(inout SphericalHarmonics::RGBL1 accumulator, float3 sampleRadiance, float3 sampleDirection)
7979
{
80-
accumulator.l0 += sample * SphericalHarmonics::y0;
81-
accumulator.l1s[0] += sample * SphericalHarmonics::y1Constant * direction.y;
82-
accumulator.l1s[1] += sample * SphericalHarmonics::y1Constant * direction.z;
83-
accumulator.l1s[2] += sample * SphericalHarmonics::y1Constant * direction.x;
80+
accumulator.l0 += sampleRadiance * SphericalHarmonics::y0;
81+
accumulator.l1s[0] += sampleRadiance * SphericalHarmonics::y1Constant * sampleDirection.y;
82+
accumulator.l1s[1] += sampleRadiance * SphericalHarmonics::y1Constant * sampleDirection.z;
83+
accumulator.l1s[2] += sampleRadiance * SphericalHarmonics::y1Constant * sampleDirection.x;
8484
}
8585

8686
void SamplePunctualLightBounceRadiance(
@@ -96,7 +96,8 @@ void SamplePunctualLightBounceRadiance(
9696
uint validSampleCount = 0;
9797
for(uint sampleIdx = 0; sampleIdx < _SampleCount; ++sampleIdx)
9898
{
99-
PunctualLightBounceRadianceSample sample = SamplePunctualLightBounceRadiance(
99+
// Using `sample` as a variable name causes compilation errors on PS5.
100+
PunctualLightBounceRadianceSample sample_ = SamplePunctualLightBounceRadiance(
100101
dispatchInfo,
101102
accelStruct,
102103
_PunctualLightSamples,
@@ -105,11 +106,11 @@ void SamplePunctualLightBounceRadiance(
105106
patchGeo.position,
106107
patchGeo.normal);
107108

108-
if (!sample.IsValid())
109+
if (!sample_.IsValid())
109110
continue;
110111

111112
validSampleCount++;
112-
ProjectAndAccumulate(radianceAccumulator, sample.radianceOverDensity, sample.direction);
113+
ProjectAndAccumulate(radianceAccumulator, sample_.radianceOverDensity, sample_.direction);
113114

114115
rng.NextSample();
115116
}

0 commit comments

Comments
 (0)