I’ve seen a similar question here, but the details are slightly different so I’d thought to ask again.
So I need some way to visualise multiple views of the same scene, so I need to draw a different camera perspective from one vtkRenderer to another vtkRenderer.
The reason I need this is because I’m visualising a big point cloud of data, let’s say 500MB in memory, and creating a new vtkRenderer and adding the same points would copy the cloud and double the RAM usage. So that means I don’t have the option to just recreate the same scene with new actors/points and sync their positions/transformations via vtkAssembly or something like that.
I thought of calling GetOffScreenFrameBuffer and setting the frame buffer object of the other renderwindow. Unfortunately when I tried this, the renderwindow didn’t like that as it had some visual glitches and opengl warnings printed in the console.
Alternatively I tried using the vtkWindowToImageFilter to capture the renderwindow “screenshot” and display this in an Actor2D object in the other rendererwindow. This seemed to be too slow for real time refresh rates when moving things on the scene.
So my first question is:
Is there a way to apply a vtkFrameBufferObject to another renderwindow without glitching, like maybe doing a deep copy of it?
And the second question:
Is there any other way I could go about creating multiple visualisers without the memory overhead of each of them having to load the data into RAM.
Thanks in advance.