Please consider a donation to the Higher Intellect project. See https://preterhuman.net/donate.php or the Donate to Higher Intellect page for more info.

Stereographics on SGI systems: Difference between revisions

From Higher Intellect Vintage Wiki
No edit summary
No edit summary
(8 intermediate revisions by the same user not shown)
Line 3: Line 3:




'''Stereographics''' is a process whereby the image in the left eye differs from the right eye giving a sharp image of extrodinary depth.
'''Stereographics''' is a process whereby the image in the left eye differs from the right eye giving a sharp image of extraordinary depth.


SGI’s high-end machines, the Onyx®
SGI’s high-end machines, the [[SGI Onyx]]®
and Crimson® lines, may be configured to run square-pixel windowed stereo with separate addressable buffers for left and right eye views, at 960x680 pixels per eye(108 fields per second). This does not require any more pixel memory than already exists to support the planar 1280x1024.  Some SGI  high-end computers have additional display RAM available, and they cansupport other square-pixel windowed stereo resolutions, though higherresolutions come at the expense of field rate. For example, such high-endhigh-display-memory SGI systems support 1024x768 pixels per eye butonly at 96 fields per second, which is high enough to have a flicker freeeffect for all but very bright images.
and [[IRIS Crimson]]® lines, may be configured to run square-pixel windowed stereo with separate addressable buffers for left and right eye views, at 960x680 pixels per eye(108 fields per second). This does not require any more pixel memory than already exists to support the planar 1280x1024.  Some SGI  high-end computers have additional display RAM available, and they can support other square-pixel windowed stereo resolutions, though higher resolutions come at the expense of field rate. For example, such high-endhigh-display-memory SGI systems support 1024x768 pixels per eye but only at 96 fields per second, which is high enough to have a flicker free effect for all but very bright images.




SGI workstations including Indy and Octane include a connector near or on the graphics card with the small image of a pair of shutter glasses next to it.
[[Silicon Graphics]] workstations including [[SGI Indy]] and [[SGI Octane]] include a connector near or on the graphics card with the small image of a pair of shutter glasses next to it.
This connector is used to connect to a box which generates synchronisation signals.
This connector is used to connect to a box which generates synchronization signals.
There are two main types. One is DB9 and the other is mini DIN.
There are two main types. One is DB9 and the other is mini DIN.
The box generates synchronisation signals and the glasses alternate displaying images in each eye.
The box generates synchronization signals and the glasses alternate displaying images in each eye.
This disparitity of information causes the frontal area of the brain to post process the information into something that can be seen in those movies with the red/blue glasses or the books of dots which people people squint at.
This disparity of information causes the frontal area of the brain to post process the information into something that can be seen in those movies with the red/blue glasses or the books of dots which people people squint at.


Crystal Eyes are a common shutter glasses and give an effect that can be more stable a look more solid than anaglyphs of the movies like Avatar, Jaws3D or the SIRDS of books like the Magic Eye.
Crystal Eyes are a common shutter glasses and give an effect that can be more stable a look more solid than anaglyphs of the movies like Avatar, Jaws3D or the SIRDS of books like the Magic Eye.


===Above-Below Subfields===
===Above-Below Subfields===
The standard CrystalEyes system displays stereoscopic images bydoubling the screen refresh rate, thus causing left- and right-eye stereopair elements to overlap.  An infrared link synchronizes liquid crystalshutter glasses, allowing the user to perceive true stereoscopic depth.In order to be compatible with this stereoscopic hardware system,graphics software must run full-screen, using the Above-Below stereoscopic format.  This stereoscopic format consists of mapping avertically-compressed left-eye subfield to the top half of the display, and a vertically-compressed right-eye subfield to the bottom half of thedisplay.
The standard CrystalEyes system displays stereoscopic images by doubling the screen refresh rate, thus causing left- and right-eye stereopair elements to overlap.  An infrared link synchronizes liquid crystal shutter glasses, allowing the user to perceive true stereoscopic depth.In order to be compatible with this stereoscopic hardware system,graphics software must run full-screen, using the Above-Below stereoscopic format.  This stereoscopic format consists of mapping avertically-compressed left-eye subfield to the top half of the display, and a vertically-compressed right-eye subfield to the bottom half of the display.


== Warning ==
== Warning ==


'''The lens on these glasses is extremely fragile'''. Do not flex the glasses in the slightest, Do not push keyboards across the desk against the glasses. You will see spiderweb like cracks through the lens, if you do. One person has accidentially killed 3 pairs over about 20 years with them.
'''The lens on these glasses is extremely fragile'''. Do not flex the glasses in the slightest, Do not push keyboards across the desk against the glasses. You will see spiderweb like cracks through the lens, if you do. One person has accidentally killed 3 pairs over about 20 years with them.


== Emitters ==
== Emitters ==




To paraphrase [http://forums.nekochan.net/viewtopic.php?f=4&t=16726529&start=0#p7349793 canavan] ...
To paraphrase canavan ...


It might be theoretically possible to build your own with only a few components, i.e. 2 555 timers and a few transistors, IR diodes etc. There are no current reports of success with this. You just need a 50us IR pulse when the 3d Sync signal goes down, and a 125us pulse when it goes up. Using a microcontroller to enable adjustable delay by +- a few microseconds would be nice, especially negative "delays" would be useful to prevent the top of the screen from darkening in some modes.
It might be theoretically possible to build your own with only a few components, i.e. 2 555 timers and a few transistors, IR diodes etc. There are no current reports of success with this. You just need a 50us IR pulse when the 3d Sync signal goes down, and a 125us pulse when it goes up. Using a microcontroller to enable adjustable delay by +- a few microseconds would be nice, especially negative "delays" would be useful to prevent the top of the screen from darkening in some modes.




[[Image:300px-stereographics_exxr_inside_small.jpg  |thumb | right  | alt=Inside of an emitter | Inside of an emitter box]]
[[Image:300px-Stereographics_exxr_inside_small.jpg  |thumb | right  | alt=Inside of an emitter | Inside of an emitter box]]
[[Image:300px-emitter-top.jpg  |thumb | right  | alt=Top of an emitter | Top of an emitter box]]
[[Image:300px-Emitter-top.jpg  |thumb | right  | alt=Top of an emitter | Top of an emitter box]]
[[Image:300px-emitter-back.jpg  |thumb | right  | alt=Back of an emitter | Back of an emitter box]]
[[Image:300px-Emitter-back.jpg  |thumb | right  | alt=Back of an emitter | Back of an emitter box]]
[[Image:300px-emitter-bottom.jpg  |thumb | right  | alt=Bottom of an emitter | Bottom of an emitter box]]
[[Image:300px-Emitter-bottom.jpg  |thumb | right  | alt=Bottom of an emitter | Bottom of an emitter box]]


Based on the information from [http://forums.nekochan.net/viewtopic.php?f=4&t=16726529&start=0#p7349796 Recondas] ...
Based on the information from Recondas ...


* http://www.cs.unc.edu/Research/stc/FAQs/Stereo/stereo-handbook.pdf
* http://www.cs.unc.edu/Research/stc/FAQs/Stereo/stereo-handbook.pdf
Line 46: Line 46:
addressable buffers for left and right eye views, at 960x680 pixels per eye
addressable buffers for left and right eye views, at 960x680 pixels per eye
(108 fields per second). This does not require any more pixel memory
(108 fields per second). This does not require any more pixel memory
than already exists to support the planar 1280x1024. Some SGI highend
than already exists to support the planar 1280x1024. Some SGI high end
computers have additional display RAM available, and they can
computers have additional display RAM available, and they can
support other square-pixel windowed stereo resolutions, though higher
support other square-pixel windowed stereo resolutions, though higher
Line 63: Line 63:
The MGRAS boards that use DB-9, which is the same reason the Indigo2 IMPACT uses DB-9 while Indigo2 ExtremeGraphics uses a mini-DIN.
The MGRAS boards that use DB-9, which is the same reason the Indigo2 IMPACT uses DB-9 while Indigo2 ExtremeGraphics uses a mini-DIN.
more appropriate to associate a graphics subsystem with a connector type rather than workstation.
more appropriate to associate a graphics subsystem with a connector type rather than workstation.
The VPro boards (verified on V6,V8,V12) use the same mini-DIN as the ExtremeGraphics. Since the Tezro uses V12 gfx, and my Fuel with V12 has the same mini-DIN...
The [[VPro]] boards (verified on V6,V8,V12) use the same mini-DIN as the ExtremeGraphics. Since the Tezro uses [[V12]] gfx, and my Fuel with V12 has the same mini-DIN...


  [[Image:300px-Indy-back.png  |300px | right]]
  [[Image:300px-Indy-back.png  |300px | right]]


  [[Image:300px-octane-back.png  | right]]
  [[Image:Octane-back.png  | right]]


<pre>
<pre>
Line 193: Line 193:
xsetmon
xsetmon


[[Image:300px-stereo-gfx-1.png | 300px ]]
[[Image:300px-Stereo-gfx-1.png | 300px ]]


Look for a mode which has "s" at the end of it.
Look for a mode which has "s" at the end of it.
Line 201: Line 201:
'''Run a Stereographic capable program.'''
'''Run a Stereographic capable program.'''


[[Image:600px-stereo-gfx-2.png | 600px  ]]
[[Image:600px-Stereo-gfx-2.png | 600px  ]]


OpenInventor will display a pop up menu by right clicking in the view area, choose "Preferences" and then click the "Stereo Viewing" check box.The space station example gives reasonable effects
OpenInventor will display a pop up menu by right clicking in the view area, choose "Preferences" and then click the "Stereo Viewing" check box.The space station example gives reasonable effects
Line 313: Line 313:


* [http://www.cs.unc.edu/Research/stc/FAQs/Stereo/stereo-handbook.pdf Stereo developers handbook]
* [http://www.cs.unc.edu/Research/stc/FAQs/Stereo/stereo-handbook.pdf Stereo developers handbook]
* [http://forums.nekochan.net/viewtopic.php?f=4&t=16726529&start=0 Forum topic]
* [http://forums.nekochan.net/viewtopic.php?f=3&t=16726064  O2 and crystal eye glasses forum topic]
* http://techpubs.sgi.com/library/tpl/cgi-bin/getdoc.cgi?coll=0650&db=man&fname=/usr/share/catman/a_man/cat7/stereo.z
* http://techpubs.sgi.com/library/tpl/cgi-bin/getdoc.cgi?coll=0650&db=man&fname=/usr/share/catman/a_man/cat7/stereo.z
* "The CrystalEyes Handbook" by Lenny Lipton, 1991, StereoGraphics Corp.
* "The CrystalEyes Handbook" by Lenny Lipton, 1991, StereoGraphics Corp.
* (Fortran) http://techpubs.sgi.com/library/tpl/cgi-bin/getdoc.cgi?coll=0650&db=man&fname=/usr/share/catman/g_man/cat3/ftn/stereo.z
* (Fortran) http://techpubs.sgi.com/library/tpl/cgi-bin/getdoc.cgi?coll=0650&db=man&fname=/usr/share/catman/g_man/cat3/ftn/stereo.z
* (X11) http://techpubs.sgi.com/library/tpl/cgi-bin/getdoc.cgi?coll=0650&db=man&fname=/usr/share/catman/p_man/cat3/Xext/XSGISetStereoMode.z
* (X11) http://techpubs.sgi.com/library/tpl/cgi-bin/getdoc.cgi?coll=0650&db=man&fname=/usr/share/catman/p_man/cat3/Xext/XSGISetStereoMode.z
* (Signaling) http://lennylipton.wordpress.com/2010/01/27/inventing-crystaleyes-part-1-3/
* (Signaling) http://lennylipton.wordpress.com/2010/01/27/inventing-crystaleyes-part-1-3/


* (Science of) http://en.wikipedia.org/wiki/Computer_stereo_vision


[[Category:SGI]]
[[Category:SGI]]

Revision as of 18:57, 19 July 2019


Stereographics is a process whereby the image in the left eye differs from the right eye giving a sharp image of extraordinary depth.

SGI’s high-end machines, the SGI Onyx® and IRIS Crimson® lines, may be configured to run square-pixel windowed stereo with separate addressable buffers for left and right eye views, at 960x680 pixels per eye(108 fields per second). This does not require any more pixel memory than already exists to support the planar 1280x1024. Some SGI high-end computers have additional display RAM available, and they can support other square-pixel windowed stereo resolutions, though higher resolutions come at the expense of field rate. For example, such high-endhigh-display-memory SGI systems support 1024x768 pixels per eye but only at 96 fields per second, which is high enough to have a flicker free effect for all but very bright images.


Silicon Graphics workstations including SGI Indy and SGI Octane include a connector near or on the graphics card with the small image of a pair of shutter glasses next to it. This connector is used to connect to a box which generates synchronization signals. There are two main types. One is DB9 and the other is mini DIN. The box generates synchronization signals and the glasses alternate displaying images in each eye. This disparity of information causes the frontal area of the brain to post process the information into something that can be seen in those movies with the red/blue glasses or the books of dots which people people squint at.

Crystal Eyes are a common shutter glasses and give an effect that can be more stable a look more solid than anaglyphs of the movies like Avatar, Jaws3D or the SIRDS of books like the Magic Eye.

Above-Below Subfields[edit]

The standard CrystalEyes system displays stereoscopic images by doubling the screen refresh rate, thus causing left- and right-eye stereopair elements to overlap. An infrared link synchronizes liquid crystal shutter glasses, allowing the user to perceive true stereoscopic depth.In order to be compatible with this stereoscopic hardware system,graphics software must run full-screen, using the Above-Below stereoscopic format. This stereoscopic format consists of mapping avertically-compressed left-eye subfield to the top half of the display, and a vertically-compressed right-eye subfield to the bottom half of the display.

Warning[edit]

The lens on these glasses is extremely fragile. Do not flex the glasses in the slightest, Do not push keyboards across the desk against the glasses. You will see spiderweb like cracks through the lens, if you do. One person has accidentally killed 3 pairs over about 20 years with them.

Emitters[edit]

To paraphrase canavan ...

It might be theoretically possible to build your own with only a few components, i.e. 2 555 timers and a few transistors, IR diodes etc. There are no current reports of success with this. You just need a 50us IR pulse when the 3d Sync signal goes down, and a 125us pulse when it goes up. Using a microcontroller to enable adjustable delay by +- a few microseconds would be nice, especially negative "delays" would be useful to prevent the top of the screen from darkening in some modes.


Inside of an emitter
Inside of an emitter box
Top of an emitter
Top of an emitter box
Back of an emitter
Back of an emitter box
Bottom of an emitter
Bottom of an emitter box

Based on the information from Recondas ...

SGI’s high-end machines, the Onyx® and Crimson® lines, may be configured to run square-pixel windowed stereo with separate addressable buffers for left and right eye views, at 960x680 pixels per eye (108 fields per second). This does not require any more pixel memory than already exists to support the planar 1280x1024. Some SGI high end computers have additional display RAM available, and they can support other square-pixel windowed stereo resolutions, though higher resolutions come at the expense of field rate. For example, such high-end high-display-memory SGI systems support 1024x768 pixels per eye but only at 96 fields per second, which is high enough to have a flicker free effect for all but very bright images.


Connectors[edit]

Stereographics connectors are always located in close proximity to graphics connectors with an image of a set of glasses and the characters 3 dash D next to it. For example the two different connector next to the Indy (top) and Octane (bottom) 13w3 connectors, pictured to the right of this page.

The MGRAS boards that use DB-9, which is the same reason the Indigo2 IMPACT uses DB-9 while Indigo2 ExtremeGraphics uses a mini-DIN. more appropriate to associate a graphics subsystem with a connector type rather than workstation. The VPro boards (verified on V6,V8,V12) use the same mini-DIN as the ExtremeGraphics. Since the Tezro uses V12 gfx, and my Fuel with V12 has the same mini-DIN...


                                    __---__
                                     /   2   \
                                    /4       5\
                                   /           \
                                  ( 1    8    3 )
                                   \           /
                                    \ 6     7 /
                                     ---___---

                     _________________________________________
                     |Pin | Name | Description                |
                     | 1  | DTR  | Data Terminal Ready        |
                     | 2  | CTS  | Clear To Send              |
                     | 3  | SYNC | Stereo Sync/GND (jumpered) |
                     | 4  | RD   | Receive Data               |
                     | 5  | TD   | Transmit Data              |
                     | 6  | SG   | Signal Ground              |
                     | 7  | GND  | Ground point               |
                     ||_8  ||_V10P ||_10V supply                 |



                          -------------------------------
                          \ A1   1  2  3  4  5   A2  A3 /
                           \   6  7  8  9  10          /
                            ---------------------------

          ______________________________________________________________
          |Pin | Name       | Description                               |
          |A1  | RED        | Analog Red signal                         |
          |A2  | GRN        | Analog Green signal + optional video sync |
          |A3  | BLU        | Analog Blue signal                        |
          | 1  | N/C        |                                           |
          | 2  | MONTYPE_0  | Monitor ID bit 0                          |
          | 3  | N/C        |                                           |
          | 4  | STEREO     | Stereo Sync signal                        |
          | 5  | STEREO_PWR | Stereo Power, +10V                        |
          | 6  | MONTYPE_1  | Monitor ID bit 1                          |
          | 7  | MONTYPE_2  | Monitor ID bit 2                          |
          | 8  | GND        |                                           |
          | 9  | GND        |                                           |
          ||10  ||_GND        ||___________________________________________|



     Indy, Indigo, Indigo2 (Elan, Extreme, XS, or XZ), and O2 models use a
     micro-DIN connector for the following Stereo port:

                                      __---__
                                     /   3   \
                                    /         \
                                   / 2       1 \
                                  (             )
                                   \     #     /
                                    \         /
                                     ---___---

                          ______________________________
                          |Pin | Name   | Description   |
                          | 1  | PWR    | +12V          |
                          | 2  | GND    | Signal Ground |
                          ||_3  ||_STEREO ||_Stereo Sync   |



     Indigo2 and Octane models with IMPACT graphics use a DB9 connector for
     stereo.  This connector has the following pin assignments:

                                --------------------
                                \  5  4  3  2  1  /
                                 \   9  8  7  6  /
                                  ---------------

                          ______________________________
                          |Pin | Name   | Description   |
                          | 1  | STEREO | Stereo Sync   |
                          | 6  | GND    | Signal Ground |
                          | 7  | GND    | Signal Ground |
                          ||_8  ||_PWR    ||_+12V          |





How to display[edit]

Once the cables are connected run the command: xsetmon

Look for a mode which has "s" at the end of it. In the server tab, check that this mode has Sync Source set to External and the Sync Voltage to TTL.. Click the load button.

Run a Stereographic capable program.

OpenInventor will display a pop up menu by right clicking in the view area, choose "Preferences" and then click the "Stereo Viewing" check box.The space station example gives reasonable effects /usr/share/data/models/vehicles/spacestation.iv Navigate to this file from the desktop and launch it.

Choose the hand tool and spin the image so that it has some aspect rotatinng to and from the viewer. Dolly the image close to the viewer.The image displayed without the glasses should look ghosted as both data sets are being presented to both eyes. Put the glasses on and enjoy the image. Done correctly it should pop out of the monitor by up to 30cm or half a foot as it rotates and be solid without ghosting.


Programming notes[edit]

There is support in GLUT for the glasses..


/* fullscreen_stereo.c  --  GLUT support for full screen stereo mode  on SGI
   workstations. */

/* 24-Oct-95 Mike Blackwell  [email protected] */

#include <stdlib.h>
#include <stdio.h>
#include <X11/Xlib.h>
#include <X11/extensions/SGIStereo.h>

/* We need to access some GLUT internal variables - this include file  is
   found in the GLUT source code distribution. */

/* XXX I do not normally encourage programs to use GLUT internals.  Programs
   that do (like this one) are inherently unportable GLUT programs.  In the
   case of SGI's low-end stereo there was enough demand to warrant supplying
   an example, and the low-end stereo is not clean enough to be supported
   directly in GLUT. -mjk */

#include "glutint.h"

#include "fullscreen_stereo.h"

/* XXX Video display modes for stereo are selected by running
   /usr/gfx/setmon; in IRIX 6.2 and later releases, the XSGIvc API supplies
   the functionality of setmon and more. */

void
start_fullscreen_stereo(void)
{
  int event, error;

  if (!XSGIStereoQueryExtension(__glutDisplay, &event, &error)) {
    fprintf(stderr, "Stereo not supported on this display!\n");
    exit(0);
  }
  if (XSGIQueryStereoMode(__glutDisplay, __glutCurrentWindow->win) < 0) {
    fprintf(stderr, "Stereo not supported on this window!\n");
    exit(0);
  }
  if (system("/usr/gfx/setmon -n STR_BOT") != 0) {
    fprintf(stderr, "setmon attempt failed!\n");
    stop_fullscreen_stereo();
    exit(0);
  }
}

void
stop_fullscreen_stereo(void)
{
  system("/usr/gfx/setmon -n 72hz");
}

void
stereo_left_buffer(void)
{
  XSGISetStereoBuffer(__glutDisplay, __glutCurrentWindow->win, STEREO_BUFFER_LEFT);
  XSync(__glutDisplay, False);
  glViewport(0, 0, XMAXSCREEN, YSTEREO);
}

void
stereo_right_buffer(void)
{
  XSGISetStereoBuffer(__glutDisplay, __glutCurrentWindow->win, STEREO_BUFFER_RIGHT);
  XSync(__glutDisplay, False);
  glViewport(0, 0, XMAXSCREEN, YSTEREO);
}

Modern Stereographics[edit]

The Crystal Eyes Stereoglasses are incompatible with Samsung Series7 3-D TV and 3-D BluRay player...

The rate at which the modern devices flicker the signal from the transmitter (in the TV) is different.

The principle and methods however is exactly the same as the original SGI systems.


Health Warning[edit]

Some people have adverse reactions

 Might want to put a message on the site about those things can seriously cause you pain. 
 I was laid up in bed for a day and a half with an utterly splitting migrane, didn't eat and was pretty ill twice.

See Also[edit]