From Second Life Wiki
Jump to: navigation, search


Function: vector llGroundNormal( vector offset );

Returns a vector that is the ground normal from the current position + offset.

• vector offset offset relative to the prim's position and expressed in local coordinates

The requested position needs to be in the same region. Only the x and y coordinates in offset are important, the z component is ignored.


This function is defined as:

vector llGroundNormal(vector offset)
    vector slope = llGroundSlope(offset);
    return <slope.x, slope.y, 1.0>;



  • There seems to some confusion be between a Surface Normal (the direction from the surface) and Normalized Vector (a vector with a magnitude of 1.0, AKA Unit Vector). This function does not return a unit vector. Surface normals may encode additional information in the magnitude of the vector. If you need a Unit Vector, simply use llVecNorm.

See Also


•  llGround Gets the ground height
•  llGroundContour Gets the ground contour
•  llGroundSlope Gets the ground slope

Deep Notes


Search JIRA for related Issues


  1. ^ Early release notes were not very accurate or thorough, they sometimes included information about features added in a previous release or fail to include information about features added in that release.


function vector llGroundNormal( vector offset );
This article wasn't helpful for you? Maybe the related article at the LSL Wiki is able to bring enlightenment.