Community Tutorial: Ocean Simulation

In UE5.2, I’m getting the following errors. Any idea how to fix those?

System failed to compile with 5 warnings and 9 errors.
D3DCompileToDxil failed. Err0r code: Unspecified Err0r (0x80004005). WaterSim, Particle GPU Compute Script, 
/Engine/Generated/NiagaraEmitterInstance.ush:1518:6: Err0r: no matching function for call to 'SampleRenderTargetValue_Emitter_RT_PixelAttribs_Casc3'
	            SampleRenderTargetValue_Emitter_RT_PixelAttribs_Casc3(float2(CascPosX[3], CascPosY[3]), SampleValues[3]);
	            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ WaterSim, Particle GPU Compute Script, 
/Engine/Generated/NiagaraEmitterInstance.ush:1517:6: Err0r: no matching function for call to 'SampleRenderTargetValue_Emitter_RT_PixelAttribs_Casc2'
	            SampleRenderTargetValue_Emitter_RT_PixelAttribs_Casc2(float2(CascPosX[2], CascPosY[2]), SampleValues[2]);
	            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ WaterSim, Particle GPU Compute Script, 
/Engine/Generated/NiagaraEmitterInstance.ush:1516:6: Err0r: no matching function for call to 'SampleRenderTargetValue_Emitter_RT_PixelAttribs_Casc1'
	            SampleRenderTargetValue_Emitter_RT_PixelAttribs_Casc1(float2(CascPosX[1], CascPosY[1]), SampleValues[1]);
	            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ WaterSim, Particle GPU Compute Script, 
/Engine/Generated/NiagaraEmitterInstance.ush:1515:6: Err0r: no matching function for call to 'SampleRenderTargetValue_Emitter_RT_PixelAttribs_Casc0'
	            SampleRenderTargetValue_Emitter_RT_PixelAttribs_Casc0(float2(CascPosX[0], CascPosY[0]), SampleValues[0]);
	            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ WaterSim, Particle GPU Compute Script, 
/Engine/Generated/NiagaraEmitterInstance.ush:605:6: note: candidate function not viable: requires 3 arguments, but 2 were provided
	void SampleRenderTargetValue_Emitter_RT_PixelAttribs_Casc3(float2 In_UV, float In_MipLevel, out float4 Out_Value);
	     ^ WaterSim, Particle GPU Compute Script, 
/Engine/Generated/NiagaraEmitterInstance.ush:1494:6: Err0r: no matching function for call to 'SampleRenderTargetValue_Emitter_RT_PixelAttribs_Casc3'
	            SampleRenderTargetValue_Emitter_RT_PixelAttribs_Casc3(float2(CascPosX[3], CascPosY[3]), SampleValues[3]);
	            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ WaterSim, Particle GPU Compute Script, 
/Engine/Generated/NiagaraEmitterInstance.ush:604:6: note: candidate function not viable: requires 3 arguments, but 2 were provided
	void SampleRenderTargetValue_Emitter_RT_PixelAttribs_Casc2(float2 In_UV, float In_MipLevel, out float4 Out_Value);
	     ^ WaterSim, Particle GPU Compute Script, 
/Engine/Generated/NiagaraEmitterInstance.ush:1493:6: Err0r: no matching function for call to 'SampleRenderTargetValue_Emitter_RT_PixelAttribs_Casc2'
	            SampleRenderTargetValue_Emitter_RT_PixelAttribs_Casc2(float2(CascPosX[2], CascPosY[2]), SampleValues[2]);
	            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ WaterSim, Particle GPU Compute Script, 
/Engine/Generated/NiagaraEmitterInstance.ush:603:6: note: candidate function not viable: requires 3 arguments, but 2 were provided
	void SampleRenderTargetValue_Emitter_RT_PixelAttribs_Casc1(float2 In_UV, float In_MipLevel, out float4 Out_Value);
	     ^ WaterSim, Particle GPU Compute Script, 
/Engine/Generated/NiagaraEmitterInstance.ush:1492:6: Err0r: no matching function for call to 'SampleRenderTargetValue_Emitter_RT_PixelAttribs_Casc1'
	            SampleRenderTargetValue_Emitter_RT_PixelAttribs_Casc1(float2(CascPosX[1], CascPosY[1]), SampleValues[1]);
	            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ WaterSim, Particle GPU Compute Script, 
/Engine/Generated/NiagaraEmitterInstance.ush:602:6: note: candidate function not viable: requires 3 arguments, but 2 were provided
	void SampleRenderTargetValue_Emitter_RT_PixelAttribs_Casc0(float2 In_UV, float In_MipLevel, out float4 Out_Value);
	     ^ WaterSim, Particle GPU Compute Script, 
/Engine/Generated/NiagaraEmitterInstance.ush:1491:6: Err0r: no matching function for call to 'SampleRenderTargetValue_Emitter_RT_PixelAttribs_Casc0'
	            SampleRenderTargetValue_Emitter_RT_PixelAttribs_Casc0(float2(CascPosX[0], CascPosY[0]), SampleValues[0]);
	            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ WaterSim, Particle GPU Compute Script, 
/Engine/Generated/NiagaraEmitterInstance.ush:654:23: warning: ambiguous type for bit shift; use a type suffix on literal values, like 'L' or 'U', or a cast [-Wambig-lit-shift]
	        int sectionWidth = 2 << passIndex;
	                             ^ WaterSim, Particle GPU Compute Script, 

Update: Seems as if you have to pass the mip level now as 2nd parameter for the SampleRenderTargetValue lines in the RoughnessIntegrator like this:

RT_PixelAttribsA_Casc0.SampleRenderTargetValue(float2(CascPosX[0], CascPosY[0]), 0.0f, SampleValues[0]);

This makes it compile in 5.2 but the visuals are still completely broken.

1 Like