Well, Tony, thanks for your comprehensive answer. It was really nice of
u to write such a detail explanation. In fact i had already managed to
make this thing run, but nevertheless got some fresh ideas from your
letter. So, thanks a TON!!! BTW, some (possibly even useful) idea for u
in return: it looks like EventListener interface is very useful even in
Java3D. What i do is create behavior and then write usual methods
'addBehaviorListnener', 'removeBehaviorListener', so that event could be
easily retranslated to all interested classes.

And now another problem i ran into after resolving that one. Currently i
program a kind of simulator and when i added Behavior class to my
program from time to time i receive the following Exception during
runtime:

javax.vecmath.SingularMatrixException: cannot invert matrix
        at javax.media.j3d.Transform3D.invertGeneral(Transform3D.java:2818)
        at javax.media.j3d.Transform3D.invert(Transform3D.java:2636)
        at
javax.media.j3d.CanvasViewCache.computeFrustumPlanes(CanvasViewCache.java:1210)
        at
javax.media.j3d.CanvasViewCache.computeView(CanvasViewCache.java:952)
        at
javax.media.j3d.CanvasViewCache.computeDerivedData(CanvasViewCache.java:261)
        at javax.media.j3d.Canvas3D.updateViewCache(Canvas3D.java:1048)
        at javax.media.j3d.Renderer.run(Renderer.java:253)

It is thrown out only when i gradually move in some direction for a long
time. Much more often it is thrown out in OpenGL version. And once or
twice only in DirectX implementation. I hadn't had it prior to using
Collision Detector and it's almost for sure that event queue is being
overfilled, since it can be easily seen that motion is not smooth in
OpenGL implementation and VM just doesn't have enough time to render the
view.

How this could be helped? Can i somehow control event queue and delete
events if there are already too many of them there?

Thanks again,
vladimir

===========================================================================
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