Hello,
I am working on fixing the Background Node so that the geometry is actually rendered, and rendered in the background.
Yuri has already implemented the background colour, so I shall endevour to get the Shape3D backgrounds working. Fortunately, a lot of the code is already there (e.g. the render bins are ready to do) so it’s really just a case of fleshing it out.
Currently I have created a partially working BackgroundShader/ShaderPeer combo for Xith3D (jogl impl). The geometry is being drawn in the background (i.e. with the depth buffer disabled) which I am happy about.
I am posting this topic to get a better understanding of how the Background node should work (or how you want it to work).
Is it up to the programmer to keep the geometry alined with the View? For example with a skybox (why I want the background node in the first place), should the developer be able to simply create the skybox geometry as a background node then forget about it - or do they need to update the skybox’s position every time the view position changes?
I am guessing it is the former option (i.e. the scenegraph updates the skybox’s position to be equal to the View). Is there some nice way of doing this in OpenGL so it is drawn relative to the current view? Or should we use the scenegraph and wrap the Shape3D in a transform group and update it that way - or if this is not the task of the renderer then the developer can worry about it.
I look forward to reading your comments.
Will.
