Can three.js dynamically set reversedDepthBuffer? What is the proper way to do it?
Technically yes, but practically no. It should be treated as an initialization-time setting. Here’s why:
The property can only be enabled if the logarithmicDepthBuffer option is not set, and more critically, changing it after the renderer is created requires a full reset of the WebGL context to take effect properly. Three.js internally compiles shaders and sets up depth state based on this flag at startup.
If you truly need dynamic toggling, you’d need to recreate the renderer entirely.