I’m currently calling “renderViewPort()” in RenderManager in order to render a specific view port. It looks like when using this method, the UniformBindingManager.newFrame() never gets called thus, making the “Time” parameter unusable by my shader.
Looks like we have to call “render()” in order to be able to use the “Time” parameter.
Would there be another way?
Here is the error I got:
IllegalArgumentException: for uniform g_Time: value cannot be null
It could be that there are some cases where a dev may want to call these directly… but then they should either manage the WHOLE pipeline themselves or do it in render() instead of update() or something.
But if your intention is to start a thread on all of the places in JME where protected things should be private and public things should be protected or private then it will be a very huge list, I think.
Either way, if you want to render a viewport before the scene then there is already a way to do that… a preview. And then JME will properly manage the globals for you and you won’t have to manage them yourself.