Both the material and the Niagara compute shader use the same function to interpret the YCoCg color data, but the Niagara compute shader returns an incorrect color.
Also found on CL: 32347737 in Release-5.4
1. Download the Licensee's test project and open.
https://udn.unrealengine.com/s/contentdocument/069QP0000066ji9YAA
2. Observe that the RVT is set to "YCoCg Base Color, Normal, Roughness, Specular"
3. Observe that the three large cubes write their colors into the RVT
4. Observe that the sphere reads its color from the RVT (and it matches) - Material: /Game/Demo/Materials/M_ReadRVT
5. Observe that the particles do not match the RVT color.
6. Observe that the Material "/Game/Demo/Materials/M_ReadRVT", in its HLSL, calls "VirtualTextureUnpackBaseColorYCoCg(...)" to extract the base color from the data in the RVT.
7. In the Niagara System /Game/Demo/Niagara/N_ReadRVT, observe the scratch pad script module "Read RVT", and open it.
8. Observe it used the node "Sample RVT"
9. In the Generated Code window, with the script set to "Particle GPUCompute Script", observe the function "SampleRVT_Emitter_ReadRVT_RuntimeVirtualTextureSample" also calls "VirtualTextureUnpackBaseColorYCoCg(...)"
There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-210242 in the post.
8 |
Fix Commit | 33991432 |
---|---|
Main Commit | 33991447 |
Created | Mar 20, 2024 |
---|---|
Resolved | May 29, 2024 |
Updated | Jul 31, 2024 |