Re: Position of object changing

New Message Reply Date view Thread view Subject view Author view

Angus Dorbie (dorbie++at++sgi.com)
Wed, 01 Jul 1998 12:24:52 -0700


Gullen, Jim wrote:
>
> It's not easy or trivial.

So what's difficult about what I've described?

I implemented this approach in half a day for a Performer
talk on the subject

It's even easier when you consider that in many
simulators as packets arrive the conversion can
be made before they even touch your application
software.

1) Subtract double precision eye xyz from every double
   precision object position xyz and cast to float.
2) Subtract double precision eye xyz from every double
   precision light source position xyz and cast to float.
3) Keep eye at the Origin.
4) Perform -eye matrix translation of OpenGL
   rendering code not in scene graph (actually best to
   keep local and manage some lower translation nubmer)

Stage 4 ofcourse is optional depending on the app, it's
not really performers fault.

This seems pretty straighforward to me. It's extremely
easy and trivial once you understand the problem.

You have to simulate /animate etc in double
precision but that's a host/application issue and an
obvious staple of an app even if the graphics pipe did
all the graphics in double precision.
Even if you only do the above without double precision
app, it would save on the roundoff Steve mentioned.

Cheers,Angus.

-- 
"Only the mediocre are always at their best." -- Jean Giraudoux 

For advanced 3D graphics Performer + OpenGL based examples and tutors: http://www.dorbie.com/ ======================================================================= 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:57:39 PDT

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