Pull request Compare This branch is 6 commits behind Eyescale:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
..
Failed to load latest commit information.
Bucky32x32x32_d.raw
Bucky32x32x32_d.raw.vhf
CMakeLists.txt
README
channel.cpp
channel.h
config.cpp
config.h
eVolve.cpp
eVolve.h
error.cpp
error.h
fragmentShader.glsl
frameData.cpp
frameData.h
fshader_.oglsl
glslShaders.cpp
glslShaders.h
hlp.h
imageOrderer.h
initData.cpp
initData.h
localInitData.cpp
localInitData.h
logo.rgb
main.cpp
node.cpp
node.h
pipe.cpp
pipe.h
rawVolModel.cpp
rawVolModel.h
rawVolModelRenderer.cpp
rawVolModelRenderer.h
sliceClipping.cpp
sliceClipping.h
vertexShader.glsl
vshader.lst
window.cpp
window.h

README

                   eVolve - Parallel Volume Renderer

Overview

   The eVolve example is an Equalizer application demonstrating scalable
   volume rendering. The volume data is read from a custom file, created
   by the eVolveConverter tool. It supports all Equalizer compound
   features, namely 2D (sort-first), DB (sort-last) and Eye (stereo)
   decompositions.

   eVolve is currently a beta technology preview, that is, it is not yet
   fully finalized and tested. Certain aspects of eVolve do not
   represent bect practices for Equalizer programming. eVolve has not
   been ported to Windows XP.


Application Structure

   The application structure is similar to eqPly. Please check eqPly
   README 'Application Structure' section for more details.


Data Format

   Each model is represented by two files: data file (.raw file) which
   contain 8-bit raw volume data plus the gradient vector for each
   voxel, and a description file (.raw.vhf file) which contain model
   parameters. Please use eVolveConverter tool shipped as a part of
   Equalizer to convert raw or pvm files to the eVolve format.

   Raw File Format

      There are two input data are supported:
        1) RAW data, where each byte correspond to a single voxel value;
        2) Each voxel is represented by 4 bytes. The first 3 bytes are
           x, y and z components of the gradient vector for the current
           voxel, the fourth byte is the color index of the voxel itself.
           The gradient vector is used for lighting calculations.

      The type of the input data is determined from the file name's ending:
      <name>.raw is recognized as a first case, and <name>_d.raw is considered
      to be RAW + gradient data.

      eVolve works only with data which is represented as a regular
      parallelepiped grid of voxels. The position of each voxel in a raw
      file could be calculated as:

         pos = ( z*(W*H) + y*W + x )*depth

         where:

         W, H, D - width, height and depth of a model,
         x, y, z - coordinates of a voxel.
         depth   - equals 1, when RAW data is used,
                   equals 4, when RAW + gradient data is used.
                   

    VHF File Format

       The first six lines describe the dimensions and scaling factor of
       the model:

          w=<val>
          h=<val>
          d=<val>
          wScale=<val>
          hScale=<val>
          dScale=<val>

       Following are two lines for the transfer function description, which
       are constant at the moment:

          TF:
          size=256

       Next are 256 lines for the transfer function, which are color and
       opacity of each voxel of the following format:

          r=<val>
          g=<val>
          b=<val>
          a=<val>


Usage

   ./examples/eVolve/eVolve  [-g] [-w <string>] [-b <float>] [-p <unsigned>] 
                             [-n <unsigned>] [-r] [-m <string>] [--] [--version] 
                             [-h]


Where: 

   -g,  --glsl
     Enable GLSL shaders

   -w <string>,  --windowSystem <string>
     Window System API ( one of: AGL glX )

   -b <float>,  --brightness <float>
     brightness factor

   -p <unsigned>,  --precision <unsigned>
     Rendering precision (default 2, bigger is better and slower)

   -n <unsigned>,  --numFrames <unsigned>
     Maximum number of rendered frames

   -r,  --resident
     Keep client resident (see resident node documentation on website)

   -m <string>,  --model <string>
     raw model file name

   --,  --ignore_rest
     Ignores the rest of the labeled arguments following this flag.

   --version
     Displays version information and exits.

   -h,  --help
     Displays usage information and exits.