MantisBT - VTK
View Issue Details
0009983VTK(No Category)public2009-12-01 10:322016-08-12 09:55
François Bertel 
Kitware Robot 
normalfeatureN/A
closedmoved 
 
 
0009983: Framework for sharing OpenGL resources between several vtkOpenGLRenderWindows
Examples of application:

1. several vtkRenderWindows, each one representing a different view point of the same scene: you want to share the resources (textures,shader program, framebuffer object, buffer objects, display lists).

2. Or different views of the same volume: share the 3D texture but show a different slice on each view. It only makes sense if there is a view using the whole 3D textures as it might less expensive to just load 2 2D textures to the VRAM.

Benefit of sharing resources: saving memory.
Drawback: some synchronization mechanism might be necessary (not in the sense of multithreading, but in the sense of make sure everybody is up-to-date about the shared resources).

None of the case above require multithreading. It can be done in one GUI thread, iterating over each vtkRenderWindow and changing its current OpenGL context.
Implementation note: each vtkOpenGLRenderWindow is attached to a unique default framebuffer and a unique OpenGL context. The OpenGL contexts share a common set of server resources (in the sense of OpenGL server)

Therefore, it seems natural to create a class vtkOpenGLResources representing the shared server state. Each vtkOpenGLRenderWindow object (or maybe better, each vtkOpenGLContext (new class)) will point to the same vtkOpenGLResources object.

Issues to address: right now, each prop (OpenGL concrete class like vtkOpenGLActor) owns its OpenGL resources (texture, display list).
No tags attached.
Issue History
2009-12-01 10:32François BertelNew Issue
2009-12-01 10:32François BertelStatusbacklog => tabled
2009-12-01 10:32François BertelAssigned To => François Bertel
2010-09-07 13:44François BertelAssigned ToFrançois Bertel =>
2011-06-16 13:11Zack GalbreathCategory => (No Category)
2016-08-12 09:55Kitware RobotNote Added: 0037122
2016-08-12 09:55Kitware RobotStatusexpired => closed
2016-08-12 09:55Kitware RobotResolutionopen => moved
2016-08-12 09:55Kitware RobotAssigned To => Kitware Robot

Notes
(0037122)
Kitware Robot   
2016-08-12 09:55   
Resolving issue as `moved`.

This issue tracker is no longer used. Further discussion of this issue may take place in the current VTK Issues page linked in the banner at the top of this page.