CAVE Program Shell

#include <cave_ogl.h>

void app_init(int argc,char **argv), app_compute(void), gfx_init(void), gfx_draw(void);
	     

main(int argc,char **argv)
{
 CAVEConfigure(&argc,argv,NULL);
 app_init(argc,argv);  
 CAVEInit();  
 CAVEInitApplication(gfx_init,0);  
 CAVEDisplay(gfx_draw,0);       
 while (!CAVEgetbutton(CAVE_ESCKEY))
        app_compute();
 CAVEExit();
}


void app_init(int argc,char **argv)
{
/* ... allocate shared memory & initialize data ... */
}


void app_compute(void)
{
/* ... compute; update shared data ... */
}


void gfx_init(void)
{
/* ... define materials & textures ... */
}


void gfx_draw(void)
{
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
/* ... render ... */
}

Compiling

OpenGL:
cc -I/usr/local/CAVE/include -L/usr/local/CAVE/lib prog.c -lcave_ogl -lGLU -lGL -lXi -lX11 -lm
cc -n32 -I/usr/local/CAVE/include -L/usr/local/CAVE/lib prog.c -lcave_ogl_n32 -lGLU -lGL -lXi -lX11 -lm
cc -64 -I/usr/local/CAVE/include -L/usr/local/CAVE/lib prog.c -lcave_ogl_64 -lGLU -lGL -lXi -lX11 -lm

IrisGL:
cc -I/usr/local/CAVE/include -L/usr/local/CAVE/lib prog.c -lcave -lgl -lm


Sample program

sample.c - basic interaction and navigation

Makefile - makefile for sample.c


Previous page    Next page

Last modified 12 July 1997.

Dave Pape, pape@evl.uic.edu