Emulator Issues #12609
closedShadow the Hedgehog eyelids still render incorrectly on D3D11/D3D12 with ubershaders
0%
Description
Game Name?
Shadow the Hedgehog
Game ID? (right click the game in the game list, Properties, Info tab)
GUPE8P
What's the problem? Describe what went wrong.
Although #11458 was fixed for most backends in 5.0-14812, the fix does not work for D3D11 and D3D12 when ubershaders are in use.
What steps will reproduce the problem?
Load Test2-Obj37.zip from #11458 while using D3D11 or D3D12 and ubershaders. Observe that the eyelids render as a solid color.
Is the issue present in the latest development version?
This issue is applicable starting in 5.0-14812, though the underlying rendering issue has existed for longer (see #11458).
What are your PC specifications? (CPU, GPU, Operating System, more)
- CPU: Intel(R) Core(TM) i7-10750H CPU @ 2.60GHz, 2592 Mhz, 6 Core(s), 12 Logical Processor(s)
- GPU: NVIDIA GeForce GTX 1650 Ti
- OS: Windows 10 Home 10.0.19042.1110
Additional notes
The following is put into the log:
warning X3577: value cannot be NaN, isnan() may not be necessary. /Gis may force isnan() to be performed
This message is logged even when using specialized shaders with D3D11/D3D12, though specialized shaders render correctly with specialized shaders. On ubershaders, it behaves as if isnan()
is always returning false. This happens even if D3DCOMPILE_IEEE_STRICTNESS
(which should be equivalent to /Gis
) is enabled.
This problem can be worked around by disabling ubershaders (or using hybrid ubershaders to minimize the time ubershaders are in use).