Dear group, while trying to use picking for collision avoidance I had several problems, please see below.
I need a 'slide along the wall' behavior when moving the avatar nearly parallel to the wall, so I DON'T use PickRay/PickSegement, but instead tried PickBounds with a BoundingSphere, PickConeSegment and PickCylinderSegment, the 2 latter ever pointing into the direction of movement. Picking is done against GEOMETRY_INTERSECT_INFO. I have 2 types of test walls: one built from one large QuadArray with just 4 vertices (but several walls are stuffed into one Shape3D as multiple Geometries) and the other built from a TriangleStripArray. The problems: - PickBounds: this gave incorrect results, half of my Quad walls where not reported as colliding with at all; when moving along and 'inside' the TriangleStrip collision was reported for several meters, then suddenly several meters were collision free, then again several meters with collision and so on. - PickConeSegment and PickCylinderSegment: with the TriangleStrip the collisions were reported correctly. With the Quads the picks looked exactly like using PickSegment, the more parallel to the wall the nearer one could approach, neither spreadAngle (for PickCone) nor radius (for PickCylinder) seemed to be respected. This, when testing in the middle of the wall. Near the edges the picking was slightly better, but not really correct. - PickConeSegment: when setting the spreadAngle to 90 degrees [PI/2] (which seems to be optimal) ALL Geometry in move direction was reported to collide! Currently I work with PI / 2.9, which gives acceptable results. Any hints and pointers are very welcome thanks Georg ___ ___ | + | |__ Georg Rehfeld Woltmanstr. 12 20097 Hamburg |_|_\ |___ [EMAIL PROTECTED] +49 (40) 23 53 27 10 =========================================================================== 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".