Re: HELP: Evaluating Performer for thesis topic.

New Message Reply Date view Thread view Subject view Author view

Angus Dorbie (dorbie++at++bitch.reading.sgi.com)
Sun, 19 Jan 1997 14:33:35 +0000


On Jan 18, 10:03pm, Jeff Bush wrote:
> Subject: HELP: Evaluating Performer for thesis topic.
>
> Hello, I am a grad student developing a 3D
> rendering application involving missile/aircraft engagement.
> There is current work done with Open Inventor but is too slow.
> I need to evaluate Performer as an alternative and would like
> some insight on a few things. If you can help me, please email
> me at jbush++at++afit.af.mil. Thank you.
>
> 1) Does it work well with Motif? I'll be using it for the UI.
>

Yes you can have Performer rendering to a window insude a Motif
GUI and there is example code, performer also has it's own GUI
widgets which you may want to consider for simple interaction
instead of Motif.

> 2) Is there an easy interface for the user to change the
> viewing angle? (using mouse controls most likely)

You should understand that performer is primarily an API for
writing applications. You can change the FOV from your application
and the "perfly" example application allows the user to change
the field of view using a slider on the GUI.

>
> 3) The aircraft model (currently an Inventor .iv file) is
> broken up in sections (engine, skin, crew...) that need to have
> their visibility "toggled". Is there a way to turn a node's
> visibility off other than removing it from the scene graph
> heirarchy?

Yes, you can use node traversal masks to disable culling and rendering
objects and in the scene very simply. You can even perform this on a
a per channel basis.

>
> 4) In order to turn the visibility on or off, I need to be able
> to identify these aircraft sections in the database. I
> understand there is a library function for loading
> Inventor files. Currently
> the Inventor file has the aircraft divided up with "SoLabel"s of
> each section that can be searched for in the Inventor tree,
> each section becomes an Inventor "child" object that can be
> manipulated seperatly. Can this be done in Performer? (I
> realize this might be a difficult question to answer
> without more info...) If I can't, my only solution would be to
> break up the .iv file into it's sections and load each
> seperatly, keeping track of them myself. I'd like to avoid
> this if possible.

pfFindNode is very usefull for finding named nodes in the scene graph. I
think the Performer inventor loader names the nodes with the labels so it
would be easy to identify the components you are interested in. I have used
this in the past but I'm not sure which field was used in the inventor
files I was reading.

You could also perform your own traversal or use a traversal function to
go through a loaded database and identify components using whatever other
distinguising attributes they posessed.

>
> 5) The OpenInventor version had 4 viewing scenes, one main
> view and 3 smaller views showing top, front and side views, all
> rendering in sync. This was trivial in Inventor. Would this
> also be easy to do in Performer? (Create 4 "views" of the same
> scene)

Yes, in Performer you have pfChannels which you create and give
perspective or orthographic projections. You map these to areas of
your application window by setting the viewport.

You can use the same scene or different scenes in each of the viewports
and your traversal masks (see 3 above) can selectively turn objects in
the scene off on a per channel basis. You can also selectively disable
rendering to the channels.

When you call pfFrame in your application loop all of the channels you
have created will be drawn, quickly :-).

>
> 6) Is there a Performer newsgroup yet?

Nope just this list.

Cheers,
Angus.

=======================================================================
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:54:22 PDT

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