Re: Fish eye correction, the come_back

New Message Reply Date view Thread view Subject view Author view

Steve Baker (steve++at++mred.bgm.link.com)
Fri, 8 Nov 96 07:30:59 -0500


> I have to project a visual of 80 by 60 with only one channel, on
> a part of dome.

Aha! The critical piece of information is the *DOME*.

Since you are rendering onto a dome (a curved surface) then you have to
consider several issues: The shape of the dome, the position of the eye
and the position of the projection device.

In an ideal world, the projector needs to be exactly where the eye is.
This tends to cause problems in the real world - so either the eye or
the projector is always in the wrong place.

However, if the eye and the projector were ideally placed, at the
center of a spherical projection screen, then your original idea of
splitting the screen into multiple channels will reduce the total
distortion only if each channel is displayed on a different projector
which is pointing towards the center of that channel.

The best solution (geometrically) is to do a multi-pass rendering.
Draw the image into a spare part of the frame buffer - then read
it back into texture memory using fbsubtexload (or it's OpenGL
equivelent) - and re-render that onto a set of polygons that are
modelled as the INVERSE of the spherical surface that you are projecting
onto. The distortion in the computed image will then exactly cancel
out the distortion in the dome.

Of course this reading back and re-rendering is pretty expensive
in throughput terms - but it's your best chance.

There are also hardware fixes that work by reading the video
output and effectively doing that same operation. I don't have
a direct pointer to a manufacturer of such devices - I recollect
that a company called 'Fulsome' or something like that makes these
devices...Does anyone else out there know their name?

Anyway, both of these tricks suffer from the fact that the resolution
of the original rendered image is being stretched in some places
and compressed in others. This tends to make the image somewhat
fuzzy in some areas and can cause aliasing in others - beware.

This is a complex issue - and I have not begun to explain the problems
when the projector and the eye are not in the same place...

Steve Baker 817-619-1361 (Vox-Lab)
Hughes Training Inc. 817-619-8776 (Vox-Office/Vox-Mail)
2200 Arlington Downs Road 817-619-4028 (Fax)
Arlington, Texas. TX 76005-6171 Steve++at++MrEd.bgm.link.com (eMail)
http://www.hti.com (external) http://MrEd.bgm.link.com/staff/steve (intranet)
                                http://web2.airmail.net/sjbaker1 (external)

=======================================================================
List Archives, FAQ, FTP: http://www.sgi.com/Technology/Performer/
            Submissions: info-performer++at++sgi.com
        Admin. requests: info-performer-request++at++sgi.com


New Message Reply Date view Thread view Subject view Author view

This archive was generated by hypermail 2.0b2 on Mon Aug 10 1998 - 17:53:55 PDT

This message has been cleansed for anti-spam protection. Replace '++at++' in any mail addresses with the '@' symbol.