Difference between revisions of "Project Week 25/Next Generation GPU Volume Rendering"
From NAMIC Wiki
Line 57: | Line 57: | ||
[https://docs.google.com/document/d/1-4Up_Shq6oFTGhwXIF5DuiXUYsdIMlAC1oK7eNHWP_o/edit#heading=h.ut6owd65r1fu Some notes about sharing GLSL code between desktop OpenGL and WebGL] | [https://docs.google.com/document/d/1-4Up_Shq6oFTGhwXIF5DuiXUYsdIMlAC1oK7eNHWP_o/edit#heading=h.ut6owd65r1fu Some notes about sharing GLSL code between desktop OpenGL and WebGL] | ||
− | Recent features in VTK Volume Rendering (in master) | + | === Planning hangout June 13 === |
+ | (Simon, Jc, Alvaro, Sankhesh, Steve, Hina) | ||
+ | |||
+ | Recent features in VTK Volume Rendering (in master, blog post coming) | ||
* Volume peeling - translucent geometry with volumes in GPU ray cast mapper | * Volume peeling - translucent geometry with volumes in GPU ray cast mapper | ||
* Render to texture | * Render to texture | ||
Line 65: | Line 68: | ||
* vtk charts to work with 2D transfer functions | * vtk charts to work with 2D transfer functions | ||
− | Slicer to migrate to latest version once cmake hierarchy is sorted out | + | Slicer to migrate to latest version once cmake hierarchy is sorted out (Jc) |
− | Questions: | + | Questions / discussion points: |
* Ray cast vs view aligned plane-based algorithms | * Ray cast vs view aligned plane-based algorithms | ||
** depth of focus, shadows, diffuse lighting... | ** depth of focus, shadows, diffuse lighting... | ||
Line 85: | Line 88: | ||
* Large volumes? | * Large volumes? | ||
* Mesa backend? | * Mesa backend? | ||
+ | ** Offscreen support for OpenGL2 backend should work in VTK now |
Revision as of 14:52, 13 June 2017
Home < Project Week 25 < Next Generation GPU Volume Rendering
Back to Projects List
Key Investigators
- Simon Drouin (Montreal Neurological Institute, Canada)
- Steve Pieper (Isomics Inc., USA)
- Andras Lasso (Queen's University, Canada)
- Ole Vegard Solberg (SINTEF, Norway)
- Alvaro Sanchez (Kitware, USA Remote attendance
- Sankhesh Jhaveri (Kitware, USA Remote attendance
Project Description
Objective | Approach and Plan | Progress and Next Steps |
---|---|---|
Develop a specification for the next generation of GPU volume processing and rendering in VTK and Slicer The specification should support
|
Compare the architectures of different existing projects where parts of the required functionality has been implemented:
Determine a sensible way to integrate all those contribution in VTK. |
TODO |
Illustrations
3D Image Filters in WebGL2
Multivolume rendering and nonlinear transforms in WebGL2
Background and References
Some notes about sharing GLSL code between desktop OpenGL and WebGL
Planning hangout June 13
(Simon, Jc, Alvaro, Sankhesh, Steve, Hina)
Recent features in VTK Volume Rendering (in master, blog post coming)
- Volume peeling - translucent geometry with volumes in GPU ray cast mapper
- Render to texture
- 2D lookup tables (value and gradient magnitude)
Work in progress
- Overlapping volumes - multiple inputs to mapper
- vtk charts to work with 2D transfer functions
Slicer to migrate to latest version once cmake hierarchy is sorted out (Jc)
Questions / discussion points:
- Ray cast vs view aligned plane-based algorithms
- depth of focus, shadows, diffuse lighting...
- How to integrate multiple features
- Nonlinear transformation
- Custom shaders
- Dynamic shader generation in python
- multiple components
- RGBA
- Independent components?
- 2D lookup tables
- Volumes that live on the GPU
- sharing across contexts
- use as input textures and render targets
- tiling?
- streaming?
- Large volumes?
- Mesa backend?
- Offscreen support for OpenGL2 backend should work in VTK now