<div dir="ltr">Hi Chris,<br><div class="gmail_extra"><br><div class="gmail_quote">On 30 August 2017 at 07:50, Chris Kuliukas <span dir="ltr"><<a href="mailto:chris@kuliukas.com" target="_blank">chris@kuliukas.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">For now it'd be too time consuming to isolate a test case. Supporting modern OpenGL does seem like it would be more natural if you had some way of hooking into the setting of the model matrix and vertex attributes so that you could assign / name / alter them yourself.<br></blockquote><div><br></div><div>Ahhhhhh, sorry but you just don't seem to grasping it, the OSG fully supports setting the view and projection matrices in GLES2 and GL3+ core profile, you don't need to add ANY more complexity than just replacing gl_ModelView* with osg_ModelView*, the OSG will even automatically remap for you.</div><div><br></div><div>The OSG automatically accumulates all view and projection matrices for you, sets the when required, it does a shed load of work for you to make you life easy.  All the osg::Camera and osg::Transform subclasses all work in coherent and robust fashion, whether you are using fixed function pipeline of shaders and they function in the same way in both.<br></div><div><br></div><div>This capability is massive strength of the OSG.</div><div><br></div><div>I can't help but feel you are making a massive deal from your own mis-understandings and see restrictions where there aren't any.  Just use the OSG, while it's not perfect, the flaws it has aren't related to management of modelview and projection martrices, this has all been working well in fixed function and shaders for a decade, it's a solved problem.</div><div><br></div><div>If all this power and convinience is not for then please go right your own scene graph as I really shouldn't have to keep replying to a pointless thread where the solutions are already provided.<br></div><div><br></div><div>Robert.<br></div></div></div></div>