CavePainting/technical user documentation

From VrlWiki
Jump to navigation Jump to search

Running in Mono

To record a CavePainting session live in the Cave using a video or still camera, it's preferable to run in mono video mode so that the left and right image don't get ghosted on top of each other. Kiosk support for this mode is limited right now, and Jadrian doesn't have system permissions to add support, so here's an explanation of how CavePainting is run in stereo and how it ought to run in mono.

This is the chain of calls initiated by selecting a CavePainting button from the kiosk:

<kiosk button>
| ~cavedemo/kiosk/<tab>/<button>/run
| | $G = /share/gfx2/dollar-g/tools/linux
| | $G/bin/cavepainting-cave
| | | cd $G/lib/kuchora/apps
| | | $G/bin/vrg3d-runcave-winserv -x ./cavepainting-gcc3-d -f <common.cfg> -f <cave.cfg>
| | | | <foreach of left, front, right, floor>
| | | | ./cavepainting-gcc3-d cave<left>-winserv -c CLUSTER_NODE_ID=1 -f <common.cfg> -f <cave.cfg>

The only difference to run in mono is the last command in the chain of calls, which should be:

| | | | ./cavepainting-gcc3-d cave<left>-winservmono -c CLUSTER_NODE_ID=1 -f <common.cfg> -f <cave.cfg>

See for example the files

  • /share/cs137/dollar-g-cs137/tools/linux/bin/cavepainting-cavemono and
  • /share/cs137/dollar-g-cs137/tools/linux/bin/vrg3d-runcave-winservmono

and contrast to

  • /share/gfx2/dollar-g/tools/linux/bin/cavepainting-cave and
  • /share/gfx2/dollar-g/tools/linux/bin/vrg3d-runcave-winserv

Modified versions of these two files, with mono support, were written 2009-06-01 to:

  • /home/jadrian/cavepainting-cavemono and
  • /home/jadrian/vrg3d-runcave-winservmono

Importing Bat Marker Data

CavePainting can import data representing the 3D positions of points through time. A marker file is a plain-text CSV file in which each row is a time step and each group of four columns are the X, Y, and Z positions for a marker, followed by the number 1 in the fourth column. For example, the following describes two markers' positions (sets of four columns) over three timesteps (rows):

0.5,0.5,0.5,1,0.2,-0.2,0.3,1
0.6,0.4,0.5,1,0.3,-0.1,0.2,1
0.7,0.3,0.4,1,0.4,0.0,0.1,1

Config file variables:

  • BatMarkersFile: path to a marker file.
  • BatMarkersScale: a scaling parameter to map the coordinates in the marker file to world coordinates in CavePainting.
  • BatMarkersSize: the radius, in the world coordinate frame, of the spheres representing the markers.
  • BatMarkersTimestepIncrement: the number of rows in the marker file to skip between creating frames.
  • BatMarkersFrame: ???