Welcome to the Second Life Forums Archive

These forums are CLOSED. Please visit the new forums HERE

vector llDetectedNormal (integer i) function

Savant Hax
Registered User
Join date: 26 Jun 2007
Posts: 7
09-26-2007 12:19
Been messing around with vehicles and other physics stuff lately, would love something like this.

Ideally it would be used in the collision_begin (), collision (), and collision_end () event handlers, and would return the surface normal of the object being collided with (passed in as a parameter similar to the rest of the llDetected* functions) at the current point of collision.

i.e.,

collision (integer n)
{
vector surface_normal = llDetectedNormal (0);

if (llFabs (surface_normal * <0, 0, 1>;) > 0.999)
llSay (0, "colliding with pavement";);
}

Probably already been suggested before, lol.

-Savant Hax
Haravikk Mistral
Registered User
Join date: 8 Oct 2005
Posts: 2,482
09-27-2007 01:29
I'm not sure if it has, never seen anything on it before.
This however would be INCREDIBLY useful. For things like blast-markers for explosion effects as well, as these could then be aligned more accurately with a surface, opposed to having to make the marker physical for a short time so it settles in roughly the right place.

It shouldn't be too hard either, since if a collision has occurred then the data should be available somewhere since the physics engine will need to calculate it to work out how much to adjust your object's velocity.
_____________________
Computer (Mac Pro):
2 x Quad Core 3.2ghz Xeon
10gb DDR2 800mhz FB-DIMMS
4 x 750gb, 32mb cache hard-drives (RAID-0/striped)
NVidia GeForce 8800GT (512mb)