Most 3D applications can be easily ported to run in multiview environments.
There are only two requirements:
Below is a step by step procedure that is likely to work in virtually any 3D application.
int left (void *data) {
return 0;
int right (void *data) {
return 0;
int back (void *data) {
return 0;
{ "front", front }, { "left", left }, { "right", right }, { "back", back }, { NULL, NULL } };
DICE_sync_update("axisRot", &axisRot);
DICE_sync_update("rotate", &rotate);
i = DICE_sync();
if ( i < 0 )
rotate = *((float *)DICE_sync_get("rotate"));