I am in process of writing my own math library and chose to follow a left-handed coordinate system approach because I find it more intuitive.
I have read that on modern OpenGL the right-handed convention is something we can do away with thanks to our providing our own matrices.
I have read that they are a few things one needs to do to ensure OpenGL behaves well in left-handed mode:
provide your MVP matrices as left-handed matrices
modify the default winding of front facing triangles to be clockwise with glFrontFace(GL_CW)
modify the depth function to greater with glDepthFunc(GL_GEQUAL)
I wanted to know if anyone out there had any thoughts about these suggestions. Are they pertinent, sufficient?
The way I've heard of it being done was scaling left-handed matrices by -1 on Z at the last moment before passing them in, but changing the Depth function sounds like it should work too.
Either way, it's important to remember to change the default winding as you've said. And that should be sufficient.
View all questions in Graphics and Gaming forum