VRENDER(3)

PACKAGE
vrender - Routines to support volume rendering

PURPOSE
These routines are meant to provide support for volume rendering. Most of the hard work in setting up the geometry, projections and making use of multiple CPUs is done in the package. The application "just" needs to provide the user interface, display canvas and shading algorithms. NOTE: THIS PACKAGE IS WORK IN PROGRESS. THE INTERFACE MAY CHANGE IN THE NEXT RELEASE, POSSIBLY WITHOUT NOTICE.

LIBRARY
karma

LINK WITH
-lkarma

FUNCTIONS

vrender_create_context
    Create a context for volume rendering.

vrender_set_context_attributes
    Set the attributes for a volume rendering context.

vrender_get_context_attributes
    Get the attributes for a volume rendering context.

vrender_register_shader
    Register a shader function.

vrender_change_shader_blank_packet
    Change blank value for a particular shader.

vrender_get_shaders
    Get the names of all registered shaders.

vrender_to_buffer
    Render a scene in a volume rendering context to a buffer.

vrender_collect_ray
    Collect a ray projected from an image plane into a volume.

vrender_project_3d
    Project a point in 3-dimensional space onto a view plane.

vrender_compute_caches
    Compute cache for volume rendering context.

vrender_image_desc_notify_func
    Register image descriptor change callback.

vrender_cache_notify_func
    Register cache computed callback.

vrender_view_notify_func
    Register view changed computed callback.

vrender_message_notify_func
    Register message callback.

vrender_client_notify_func
    Register new client callback.

vrender_get_eye_info
    Get eye information.

vrender_show_stats
    Show distributed rendering statistics.

vrender_send_message
    Send a message to all "VRENDER_private" clients.

vrender_PROTO_render_notify_func
    Volume rendering completed callback.

vrender_PROTO_image_desc_notify_func
    Image descriptor changed callback.

vrender_PROTO_cache_notify_func
    Cache computed callback.

vrender_PROTO_view_notify_func
    View changed callback.

vrender_PROTO_message_notify_func
    Message received callback.

vrender_PROTO_client_notify_func
    Client connected callback.

TABLE vrender_ATTRIBUTES
List of attributes volume rendering contexts
Name Get Type Set Type Meaning
VRENDER_CONTEXT_ATT_END End of varargs list
VRENDER_CONTEXT_ATT_CUBE iarray * iarray Volume
VRENDER_CONTEXT_ATT_VIEW view_specification * view_specification * Current view
VRENDER_CONTEXT_ATT_SHADER CONST char * Shader name
VRENDER_CONTEXT_ATT_SUBCUBE_X_START unsigned long * unsigned long X start
VRENDER_CONTEXT_ATT_SUBCUBE_X_END unsigned long * unsigned long X end
VRENDER_CONTEXT_ATT_SUBCUBE_Y_START unsigned long * unsigned long Y start
VRENDER_CONTEXT_ATT_SUBCUBE_Y_END unsigned long * unsigned long Y end
VRENDER_CONTEXT_ATT_SUBCUBE_Z_START unsigned long * unsigned long Z start
VRENDER_CONTEXT_ATT_SUBCUBE_Z_END unsigned long * unsigned long Z end
VRENDER_CONTEXT_ATT_IMAGE_DESC array_desc * Image descriptor
VRENDER_CONTEXT_ATT_VALID_IMAGE_DESC flag * flag Valid image descriptor
VRENDER_CONTEXT_ATT_PROJECTION unsigned int Projection code
VRENDER_CONTEXT_ATT_EYE_SEPARATION double Distance between eyes
VRENDER_CONTEXT_ATT_SMOOTH_CACHE flag Produce smooth cache

TABLE vrender_EYES
List of eye views
Name Meaning
VRENDER_EYE_CHOICE_CYCLOPS Single eye (monoscopic vision)
VRENDER_EYE_CHOICE_LEFT Left eye (stereoscopic vision)
VRENDER_EYE_CHOICE_RIGHT Right eye (stereoscopic vision)

TABLE vrender_EYE_MASKS
List of eye view masks
Name Meaning
VRENDER_EYE_MASK_CYCLOPS Single eye (monoscopic vision)
VRENDER_EYE_MASK_LEFT Left eye (stereoscopic vision)
VRENDER_EYE_MASK_RIGHT Right eye (stereoscopic vision)

AUTHOR
Richard Gooch (rgooch@atnf.csiro.au)

AVAILABLITY
The Karma Distribution is available for anonymous ftp from: ftp://ftp.atnf.csiro.au/pub/software/karma/ ftp://wuarchive.wustl.edu/graphics/graphics/packages/karma/ ftp://ftp.pwr.wroc.pl/pub/karma/ The Karma Home Page is: http://www.atnf.csiro.au/karma/