Difference between revisions of "Zspace-config"
(→CalVR Menu Configuration) |
|||
(10 intermediate revisions by one user not shown) | |||
Line 1: | Line 1: | ||
− | ==Configure a zSpace Device for Linux== | + | ==Configure a zSpace Device for CalVR in Linux== |
+ | |||
+ | ===Enabling Active Stereo=== | ||
* Nvidia documentation of stereo modes: /usr/share/doc/NVIDIA_GLX-1.0/README.txt | * Nvidia documentation of stereo modes: /usr/share/doc/NVIDIA_GLX-1.0/README.txt | ||
Line 5: | Line 7: | ||
** sudo vi /etc/X11/xorg.conf | ** sudo vi /etc/X11/xorg.conf | ||
** in Section "Screen": add Option "Stereo" 3 | ** in Section "Screen": add Option "Stereo" 3 | ||
+ | ** Create a new section like this: | ||
+ | <pre> | ||
+ | Section "Extensions" | ||
+ | Option "Composite" "off" | ||
+ | EndSection | ||
+ | </pre> | ||
* Run sudo nvidia-settings: verify that the refresh rate is 120 Hz | * Run sudo nvidia-settings: verify that the refresh rate is 120 Hz | ||
* "glxinfo -t" must show a few modes with the stereo flag set to 1 | * "glxinfo -t" must show a few modes with the stereo flag set to 1 | ||
* Test with "glxgears -stereo" | * Test with "glxgears -stereo" | ||
+ | * If it doesn't work, look for clues in /var/log/Xorg.0.log | ||
+ | |||
+ | ===CalVR Screen Configuration=== | ||
+ | |||
+ | The zSpace has a resolution of 1920x1080 pixels. | ||
+ | The active screen area is 521x292 millimeters. | ||
+ | The display is tilted 30 degrees from the horizontal axis (=60 degrees from the vertical). | ||
+ | We want the world coordinate system's origin to be in the center of the screen. | ||
+ | The center of the screen is about 120 millimeters above the table the zSpace sits on. | ||
+ | |||
+ | <pre> | ||
+ | <ChannelConfig> | ||
+ | <Channel width="1920" height="1080" left="0" bottom="0" comment="Main" channel="0" | ||
+ | stereoMode="QUAD_BUFFER" windowIndex="0" name="0" /> | ||
+ | </ChannelConfig> | ||
+ | |||
+ | <WindowConfig> | ||
+ | <Window width="1920" comment="Main" window="0" pipeIndex="0" height="1080" | ||
+ | left="0" bottom="0" name="0" decoration="false" quadBuffer="true" /> | ||
+ | </WindowConfig> | ||
+ | |||
+ | <ScreenConfig> | ||
+ | <Screen width="521" comment="Main" h="0" originX="0" originY="0" originZ="0" | ||
+ | height="292" p="-60.0" r="0.0" name="0" screen="0" /> | ||
+ | </ScreenConfig> | ||
+ | |||
+ | <NumPipes value="1" /> | ||
+ | <NumScreens value="1" /> | ||
+ | <NumWindows value="1" /> | ||
+ | |||
+ | <SceneSize value="521" /> | ||
+ | <ViewerPosition x="0" y="-450" z="300" /> | ||
+ | <EyeSeparation value="on" /> | ||
+ | <Stereo value="true" /> | ||
+ | <Stereo separation="64" /> | ||
+ | </pre> | ||
+ | |||
+ | ===CalVR Tracker Configuration=== | ||
+ | |||
+ | The origin of the tracking coordinate system is 350 millimeters above the center of the screen, and 230 millimeters in front of it, with no offset to the left or right. | ||
+ | |||
+ | The origin of the stylus' local coordinate system is in its front tip. Its orientation is such that the stylus points straight forward, with the cable leaving it on its bottom. | ||
+ | |||
+ | The origin of the glasses' local coordinate system is such that the lenses point straight forward like one would wear them on one's head. | ||
+ | |||
+ | <pre> | ||
+ | <Input> | ||
+ | <TrackingSystem0 value="VRPN" > | ||
+ | <Orientation h="0" p="90" r="0" /> | ||
+ | <Offset x="0" y="-230" z="350" /> | ||
+ | <NumBodies value="2" /> | ||
+ | <NumButtons value="3" /> | ||
+ | <VRPN> | ||
+ | <Server value="Tracker0@skarn.ucsd.edu" /> | ||
+ | </VRPN> | ||
+ | <Body0> <!-- Head --> | ||
+ | <Orientation h="0" p="0" r="0" /> | ||
+ | </Body0> | ||
+ | <Body1> <!-- Hand --> | ||
+ | <Orientation h="0" p="-90" r="0" /> | ||
+ | <Offset x="0" y="0" z="0" /> | ||
+ | </Body1> | ||
+ | </TrackingSystem0> | ||
+ | |||
+ | <NumHeads value="1" /> | ||
+ | <NumHands value="1" /> | ||
+ | <Head0Address system="0" body="0" /> | ||
+ | <Hand0> | ||
+ | <Address system="0" body="1" /> | ||
+ | <ButtonMask system0="0x03" system1="0x00" /> | ||
+ | </Hand0> | ||
+ | </Input> | ||
+ | </pre> | ||
+ | |||
+ | ===CalVR Menu Configuration=== | ||
+ | |||
+ | To put the menu in a convenient location at a good size use the following settings. | ||
+ | |||
+ | <pre> | ||
+ | <MenuSystem type="BOARDMENU" useHints="false"> | ||
+ | <BoardMenu> | ||
+ | <Position distance="300" /> | ||
+ | <Scale value="0.3" /> | ||
+ | <Buttons select="0" open="1" /> | ||
+ | <Trigger value="DOUBLECLICK" /> | ||
+ | </BoardMenu> | ||
+ | </MenuSystem> | ||
+ | </pre> |
Latest revision as of 18:47, 1 November 2012
Contents |
Configure a zSpace Device for CalVR in Linux
Enabling Active Stereo
- Nvidia documentation of stereo modes: /usr/share/doc/NVIDIA_GLX-1.0/README.txt
- Enable stereo:
- sudo vi /etc/X11/xorg.conf
- in Section "Screen": add Option "Stereo" 3
- Create a new section like this:
Section "Extensions" Option "Composite" "off" EndSection
- Run sudo nvidia-settings: verify that the refresh rate is 120 Hz
- "glxinfo -t" must show a few modes with the stereo flag set to 1
- Test with "glxgears -stereo"
- If it doesn't work, look for clues in /var/log/Xorg.0.log
CalVR Screen Configuration
The zSpace has a resolution of 1920x1080 pixels. The active screen area is 521x292 millimeters. The display is tilted 30 degrees from the horizontal axis (=60 degrees from the vertical). We want the world coordinate system's origin to be in the center of the screen. The center of the screen is about 120 millimeters above the table the zSpace sits on.
<ChannelConfig> <Channel width="1920" height="1080" left="0" bottom="0" comment="Main" channel="0" stereoMode="QUAD_BUFFER" windowIndex="0" name="0" /> </ChannelConfig> <WindowConfig> <Window width="1920" comment="Main" window="0" pipeIndex="0" height="1080" left="0" bottom="0" name="0" decoration="false" quadBuffer="true" /> </WindowConfig> <ScreenConfig> <Screen width="521" comment="Main" h="0" originX="0" originY="0" originZ="0" height="292" p="-60.0" r="0.0" name="0" screen="0" /> </ScreenConfig> <NumPipes value="1" /> <NumScreens value="1" /> <NumWindows value="1" /> <SceneSize value="521" /> <ViewerPosition x="0" y="-450" z="300" /> <EyeSeparation value="on" /> <Stereo value="true" /> <Stereo separation="64" />
CalVR Tracker Configuration
The origin of the tracking coordinate system is 350 millimeters above the center of the screen, and 230 millimeters in front of it, with no offset to the left or right.
The origin of the stylus' local coordinate system is in its front tip. Its orientation is such that the stylus points straight forward, with the cable leaving it on its bottom.
The origin of the glasses' local coordinate system is such that the lenses point straight forward like one would wear them on one's head.
<Input> <TrackingSystem0 value="VRPN" > <Orientation h="0" p="90" r="0" /> <Offset x="0" y="-230" z="350" /> <NumBodies value="2" /> <NumButtons value="3" /> <VRPN> <Server value="Tracker0@skarn.ucsd.edu" /> </VRPN> <Body0> <!-- Head --> <Orientation h="0" p="0" r="0" /> </Body0> <Body1> <!-- Hand --> <Orientation h="0" p="-90" r="0" /> <Offset x="0" y="0" z="0" /> </Body1> </TrackingSystem0> <NumHeads value="1" /> <NumHands value="1" /> <Head0Address system="0" body="0" /> <Hand0> <Address system="0" body="1" /> <ButtonMask system0="0x03" system1="0x00" /> </Hand0> </Input>
CalVR Menu Configuration
To put the menu in a convenient location at a good size use the following settings.
<MenuSystem type="BOARDMENU" useHints="false"> <BoardMenu> <Position distance="300" /> <Scale value="0.3" /> <Buttons select="0" open="1" /> <Trigger value="DOUBLECLICK" /> </BoardMenu> </MenuSystem>