You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I just saw you implementation note after I forked your repo and stumbled upon the Z-Fighting issue. Reverse Z-Buffer is a real improvement especially on large stages. For GTR2 it also helped to resolve a lot of Z-Fighting flickering. ( Which I personally did not yet encounter on RBR)
This is super interesting, I hadn't heard of reverse-z before. I'll come back to this at some point, this would be a nice thing to implement.
The current implementation reduces Z-fighting by rendering the cockpit that's near the driver with different projection matrix than the rest of the stage. It works quite well, although there are some noticeable artifacts sometimes where the stage gets clipped if it comes too near to the driver's eyes, like when driving into a snowbank. It's a bit of a hacky solution though, so this would most likely yield better results.
Great to hear that it might be helpful. Your solution to split the cockpit and the stage to different matrix is pretty smart trick as well. I did not notice any issues and possibly only happens on the edge cases you explained.
On GTR2 it was tricky as the tracks had many decals that where placed close to the track, like the line markings on the road and the light and shadow planes. Reverse Depth fixed all the flickering issues, even on using integer depth precision.
I just saw you implementation note after I forked your repo and stumbled upon the Z-Fighting issue. Reverse Z-Buffer is a real improvement especially on large stages. For GTR2 it also helped to resolve a lot of Z-Fighting flickering. ( Which I personally did not yet encounter on RBR)
Just a tip you can try out:
https://developer.nvidia.com/content/depth-precision-visualized
Feel free to close this issue if its not relevant anymore.
The text was updated successfully, but these errors were encountered: