Re: pfFrust Questions
John Rohlf (jrohlf++at++tubes)
Mon, 5 Dec 94 14:57:34 PST
>
> To: info-performer++at++sgi.com
> Subject: pfFrust Questions
> ---text follows this line---
> Hi, I'm new to Performer. We are running Performer 1.2 on Onyx with 6 cpus
> and 2 graphic pipes with 2 RM5s per pipe. We are using the Onyx to be our OTW
> image generator for our C17 simulator.
>
> The setup is a 2 channel system with the pilot and copilot sharing the same
> front channel and the pilot having a separate side view channel. We are
> using a wide angle collimated optics (WACO) system with the pilot side having
> zero gap mirrors for his front and side views (two channels).
>
> Now for my question:
>
> The WACO system has 45 degrees HFOV (hortizontal fiew of view) and 36 VFOV
> (vertical fiew of view). In addition, there is a 3 degree pitch in the
> VFOV to provide more down view angle.
>
> Using the pfMakeSimpleFrust and pfChanViewOffsets, I can setup the two
> channels but I can't account for the 3 degs of pitch. The way it's explained
> to me, is that 36 VFOV is +25 from the center and -31 down. Using the
> pfChanViewOffsets to add in the 3 degs simply makes a side window that is
> pitched down 3 degrees. This is not the affect I want. I want the window
> to stay at the original center line but with more down viewing angle. This
> is critical since we are using a real HUD. When we on the runway, the horizon
> is not where it should be when viewing thru the HUD with/out the 3 degs
> using the pfChanViewOffsets command.
>
>
> Has anyone done this before? Would you mind pointing me in the right
> direction? What are the calculations/calls I need to get this to align up?
>
> Thanks in advance,
>
> sal
>
>
>
> -----------------------------------------------------------------------------
> Salvador Cabaruvias |email: sal++at++sgidev.mdc.com
> CSSL |saying: "Well I be done seen about
> McDonnell Douglas | everything when I see elephant
> (310) 593-6719 | fly!" --- Dumbo ---
> -----------------------------------------------------------------------------
>
>
Try this:
pfFrustAspect(chan, PFFRUST_CALC_NONE); /* Needed to workaround a bug*/
pfChanAutoAspect(chan, PFFRUST_CALC_NONE);
pfFrustNearFar(chan, near, far);
pfMakePerspFrust(chan,
-near * pfTan(22.5f), /* left */
near * pfTan(22.5f), /* right */
-near * pfTan(25.0f), /* bottom */
near * pfTan(31.0f)); /* top */
This archive was generated by hypermail 2.0b2
on Mon Aug 10 1998 - 17:50:43 PDT