LSL Touch Position

From Second Life Wiki
Revision as of 14:32, 22 March 2008 by Qarl Linden (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Here we propose an extension of the detected LSL functions to determine surface information for touch events. Each of the following functions is valid only inside touch_start, touch, and touch_end events. In the case of touch events, which are triggered repeatedly while the mouse button is held down, the surface information is valid (and is updatedly correctly) as long as the mouse remains over the surface of the object (allowing psuedo GUI builds with sliders, levers, dials, etc.)


vector llDetectedTouchPos(integer number)

Returns the region coordinates of the position touched by detected object number.


integer llDetectedTouchFace(integer number)

Returns the face of the position touched by detected object number.


vector llDetectedTouchUV(integer number)

Returns the surface coordinates of the position touched by detected object number.


vector llDetectedTouchNormal(integer number)

Returns the surface normal of the position touched by detected object number. (A normal is a vector perpendicular to the surface.)


vector llDetectedTouchBinormal(integer number)

Returns the surface binormal of the position touched by detected object number. (A binormal is a vector tangent to the surface pointing along the U direction of tangent space.)

Internal Discussion

https://jira.lindenlab.com/browse/DEV-9985

External Links

http://jira.secondlife.com/browse/SVC-519

http://jira.secondlife.com/browse/SVC-574

http://jira.secondlife.com/browse/SVC-690

https://wiki.secondlife.com/wiki/Touch_Coordinates

http://wiki.secondlife.com/wiki/LlDetectedLinkFace