Matthew,

I don't think so, I think the USE_GEOMETRY mode perform a face by face
comparision of all faces in the virtual universe (or faces which are within
the activation volume of the scene). That's why j3d collision detection is
so slow.

Sunny

-----Original Message-----
From: Matthew Pocock [mailto:[EMAIL PROTECTED]]
Sent: Monday, July 26, 1999 10:28 PM
To: [EMAIL PROTECTED]
Subject: Re: [JAVA3D] Optimising collision detection in J3D


I kind-of assumed that if you said USE_GEOMETRY that the collision engine
would
do an initial sweep using a realy stupid spherical bounds model, discard
every
pair that are clearly not colliding, and then perform the clever, accurate
geometry collision test. Am I wrong?

"Leung, Sunny" wrote:

> Hi Justin,
>
> Thanks for your response to my question in J3D interest group.
>
> I have tried the USE_BOUNDS method in the collision constructor instead of
> the USE_GEOMETRY parameter. Although the speed has increase significantly
> from the 8mins to 14sec., the accuracy of such method is unacceptable. Is
it
> possible to setup a CollisionBounds around an object using its shape3d
> information (vertices information).
>
> Instead of separating collidable and non-collidable objects in the
> scenegraph. Is it possible to instruct the collision detection node to
only
> perform collision detection within a certain radius (volume) around an
> object. For example, if there is no objects within a 2 meters radius of a
> particular object (Object A), the collision detection will not be
activated.
> If another object (Object B) is within the 2m radius of Object A, the
> collision detection node will activate and detect any possible collision
> between Object A and parts of Object B which are within the 2m radius of
> Object A.
>
> If the above approach is possible, it will greatly reduce CPU time (even
in
> USE_GEOMETRY mode) and at the same time maintain high level of accuracy.
>
> Please comments.
>
> cheers,
> Sunny Leung
>
> -----Original Message-----
> From: Justin Couch [mailto:[EMAIL PROTECTED]]
> Sent: Monday, July 26, 1999 1:14 PM
> To: [EMAIL PROTECTED]
> Subject: Re: [JAVA3D] Optimising collision detection in J3D
>
> Leung, Sunny wrote:
>
> > So is it possible to tell the collision detection node to detect
collision
> > only within a certain radius (volume) around the object which the node
is
> > attached onto?
>
> There are two things that you need to do. Firstly, for any objects that
> you _don't_ want to collide with, you turn collision detection off using
> setCollidable(false) defined in Node. The easiest way to do this is
> partition the scene graph into two groups - collidable and not
> collidable areas. Then, the parent group of all the not collidable stuff
> you setCollidable(false). This then works for all children of the group
> so that you don't need to explicitly set it.
>
> Next, you set the bounds for the objects you do want to collide with
> using the setCollisionBounds method of the parent group of the
> collidable object (defined in the Group class). If you want a spherical
> bounds for your object use BoundingSphere as the object that you set.
>
> Finally, when constructing your behaviour criterion, make sure you set
> it with the Node and the speed hint of USE_BOUNDS. I think you can also
> use the constructor that takes the Bounds reference and it automatically
> uses the USE_BOUNDS speed hint, but the docs aren't particularly clear
> on this.
>
> --
> Justin Couch                                   Author, Java Hacker
> Snr Software Engineer                     [EMAIL PROTECTED]
> ADI Ltd, Systems Group              http://www.vlc.com.au/~justin/
> Java3D FAQ:       http://tintoy.ncsa.uiuc.edu/~srp/java3d/faq.html
> -------------------------------------------------------------------
> "Look through the lens, and the light breaks down into many lights.
>  Turn it or move it, and a new set of arrangements appears... is it
>  a single light or many lights, lights that one must know how to
>  distinguish, recognise and appreciate? Is it one light with many
>  frames or one frame for many lights?"      -Subcomandante Marcos
> -------------------------------------------------------------------
>
>
===========================================================================
> To unsubscribe, send email to [EMAIL PROTECTED] and include in the
body
> of the message "signoff JAVA3D-INTEREST".  For general help, send email to
> [EMAIL PROTECTED] and include in the body of the message "help".
>
>
===========================================================================
> To unsubscribe, send email to [EMAIL PROTECTED] and include in the
body
> of the message "signoff JAVA3D-INTEREST".  For general help, send email to
> [EMAIL PROTECTED] and include in the body of the message "help".

===========================================================================
To unsubscribe, send email to [EMAIL PROTECTED] and include in the body
of the message "signoff JAVA3D-INTEREST".  For general help, send email to
[EMAIL PROTECTED] and include in the body of the message "help".

===========================================================================
To unsubscribe, send email to [EMAIL PROTECTED] and include in the body
of the message "signoff JAVA3D-INTEREST".  For general help, send email to
[EMAIL PROTECTED] and include in the body of the message "help".

Reply via email to