slipher

Results 727 comments of slipher

The depth value as read in the generic shader with depth fade enabled, with the color formula `1 / (1.0001 - depth) / 600`. ![Image](https://github.com/user-attachments/assets/7e9872e1-487c-40a8-be19-076174b86ff2) I don't think those low...

Happens regardless of bindless texture (or material system) settings. I tried putting `glMemoryBarrier( GL_ALL_BARRIER_BITS )` in Tess_End and that didn't fix it. Since I didn't note the GPU model yet...

I tried putting a call to `glTextureBarrier()` in Tess_End and that fixes it. This function requires the `ARB_texture_barrier` extension. Maybe we could call that only before shaders that use the...

Although `TextureBarrier` worked in practice, I don't think it stops the undefined results according to the standard. From OpenGL 3.2 section 3.8.9 "Texture Minification: > __Rendering Feedback Loops__ If all...

Hmm I don't see any way of getting past the "feedback loop" rules without creating a copy of the depth buffer, so I guess I'll go with the texture barrier...

Oh I bet it's the `polygonOffset` that triggers the bug. That could involve a different GPU code path for writing the depth. Unless it's just the different shader sort that...

> No, using `glTextureBarrier()` is correct: > 9.3.1 Rendering Feedback Loops: Yeah, there's that section about exceptions where a texture *write* is not undefined. But it doesn't say anything to...

Fix is now in. But I will note that with material system enabled, the depth values can be bad with any old surface -- it doesn't have to be polygonOffset....

The collision geometry of the offending patch surface can be visualized by setting `/surfSC 437` on my [branch](https://github.com/slipher/Unvanquished/tree/trace-research): ![unvanquished_2024-09-16_191552_000](https://github.com/user-attachments/assets/085a56d0-0ba0-4a79-9edb-83f6a75341a2) I thought decreasing `SUBDIVIDE_DISTANCE`, which is supposed to produce more precise...