Difference between revisions of "Mipmapped Volume Rendering"

From Immersive Visualization Lab Wiki
Jump to: navigation, search
Line 1: Line 1:
== Long Term Goal ==
 
 
 
==Current Project Status==
 
==Current Project Status==
  
  
 
==TODO==
 
==TODO==
# Multi volume support
+
===Multi volume support===
# Modify downsampler with padding
+
* For now, it can load multiple volumes but the algorithm used here is very simple: overlaying two rendered images.  
#* the current downsampler does not pad empty data when a brick is not of a regular size. Nancy and I implemented in this way because it was easier than padding. However, this causes lots of problems from the reader part, mostly additional checking codelet whether a brick has a regular size, e.g. 128, or smaller than that. Due to the exception, we need couple more variables for boundary bricks of which size is usually smaller than the brick size. By padding, these inefficient and unnecessary data can be removed.
+
* Chih's work hasn't been integrated. I also have an idea about the correct multi volume rendering equation.
# XML format for configuration file
+
#* the current version read a special configuration format, which is not flexible and hard to understand the format. It would be good if we can reformat the configuration file with an XML schema, as we did in covise. A new format will affect downSampler*D, meshRend::loadConfigFile() and requires a new interface to pass the information between classes.
+
  
==DONE==
+
=== Downsampler ===
# Move configuration file parsing from BrickManager class to MeshRend class (done)
+
* Downsampler has lots of problems and I'd like to completely rewrite the program.
# Move duplicated code in QuadInfo and CubeInfo class to BrickInfo super class (done)
+
* OpenGL API will accelerate this process.
# Reimplement Multi-channel support (done)
+
* Thin volume support
#* modify texture memory allocation to handle single channel
+
 
#* vvGLSL class
+
=== Renderer ===
# Reimplement Pixel Buffer Object
+
* Thin volume support
 +
* Removing padding
 +
 
 +
=== Transfer Function ===
 +
* 1D transfer function
 +
 
 +
=== Test Set ===
 +
* Collect a set of volume so I can always check after major modification of the code
 +
 
 +
=== Software Release ===
 +
* find an easy workflow minimizing editing
 +
* script
 +
* qmake
 +
 
 +
== Long Term Goal ==
 +
* integrate with deskvox
 +
* integrate with my multi-dimensional transfer function

Revision as of 17:07, 21 July 2009

Contents

Current Project Status

TODO

Multi volume support

  • For now, it can load multiple volumes but the algorithm used here is very simple: overlaying two rendered images.
  • Chih's work hasn't been integrated. I also have an idea about the correct multi volume rendering equation.

Downsampler

  • Downsampler has lots of problems and I'd like to completely rewrite the program.
  • OpenGL API will accelerate this process.
  • Thin volume support

Renderer

  • Thin volume support
  • Removing padding

Transfer Function

  • 1D transfer function

Test Set

  • Collect a set of volume so I can always check after major modification of the code

Software Release

  • find an easy workflow minimizing editing
  • script
  • qmake

Long Term Goal

  • integrate with deskvox
  • integrate with my multi-dimensional transfer function