Re: Intersect problems

New Message Reply Date view Thread view Subject view Author view

Lew Hitchner (hitchner++at++netcom.com)
Thu, 30 Jun 1994 20:13:55 -0700


"Payton R. White" <u27486++at++blackwolf.sdsc.edu> wrote
and "Jim Helman" <jimh++at++surreal.asd.sgi.com> replied:

>> I can't find anything that
>> says I should call intersect functions from a specific place or process
>> but I wouldn't doubt that this is part of the problem.
>
> Bad documentation. pfSegsIsectNode() should only be called from the
> APP or ISECT process, although it probably would also work from the
> CULL process. The DRAW process does not have a private copy of the
> scene graph, so it's easy to imagine scene graph changes colliding.
>
> Also, intersections can be time consuming, so they are usually the
> last sort of thing you want to be doing in the DRAW process.
>
>> Currently my collision routines are called from my navigation
>> function in the draw callback.
>
> That's probably the cause of the problem.
>
> rgds,
>
> -jim helman
>
> jimh++at++surreal.asd.sgi.com
> 415/390-1151

Actually, this is documented -- in the new and improved
IRIS Performer Programming Guide (for v1.2, Doc. # 007-1680-020).

In chapter 7: Frames and Load Control, in the section
"Rules for Invoking Functions While Multiprocessing"
in table 7-4 "Trigger Routines and Associated Processes" on page 177,
it says exactly what Jim replied: that pfSegIsectNode should only be
called from ISECT or APP processes. The rest of that table and section
contain much more good info.

This is a new manual and I imagine most users haven't read it much.
But thanks to the Performer Group a lot of work was put into improving
the v1.2 Prog. Guide -- and it is improved! I recommend it both for
learning or reviewing fundamental principles and as a reference (this
release of the manual is quite well indexed).

        Lew Hitchner
        VR and Visual Sim Consultant
        Mountain View, CA
        hitchner++at++netcom.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:50:22 PDT

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