PRIM POINT LIGHT
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
LSL Portal | Functions | Events | Types | Operators | Constants | Flow Control | Script Library | Categorized Library | Tutorials |
Description
Constant: integer PRIM_POINT_LIGHT = 23;The integer constant PRIM_POINT_LIGHT has the value 23
PRIM_POINT_LIGHT is used to configure the point light configuration of the prim
llSetPrimitiveParams
[ PRIM_POINT_LIGHT, integer boolean, vector color, float intensity, float radius, float falloff ]• integer | boolean | – | TRUE enables, FALSE disables | |
• vector | color | – | color in RGB <R, G, B> (<0.0, 0.0, 0.0> = black, <1.0, 1.0, 1.0> = white) | |
• float | intensity | – | ranges from 0.0 to 1.0 | |
• float | radius | – | ranges from 0.1 to 20.0 | |
• float | falloff | – | ranges from 0.01 to 2.0 |
When used with llSetPrimitiveParams & llSetLinkPrimitiveParams & llSetLinkPrimitiveParamsFast
llGetPrimitiveParams
llGetPrimitiveParams([ PRIM_POINT_LIGHT ]);Returns the list [ integer boolean, vector color, float intensity, float radius, float falloff ]
• integer | boolean | – | TRUE enables, FALSE disables | |
• vector | color | – | color in RGB <R, G, B> (<0.0, 0.0, 0.0> = black, <1.0, 1.0, 1.0> = white) | |
• float | intensity | – | ranges from 0.0 to 1.0 | |
• float | radius | – | ranges from 0.1 to 20.0 | |
• float | falloff | – | ranges from 0.01 to 2.0 |
Caveats
- Viewers that do not have advanced lighting enabled can only render 6 lights at a time and projectors will be rendered as omnidirectional light sources. (OpenGL limitations allow for 8 light sources, SL appears to reserve one each for the Sun and Moon.)
- Viewers that do have advanced lighting enabled can render as many lights as their graphics card allows; it is not hard-limited by the viewer.
- Lights with a high intensity have a wash-out effect when overlapping. Keep this in mind when using multiple lights. Never create an abundance of lights to get around the 6 light maximum in basic lighting, as viewers with advanced lighting will be washed out and may suffer from client lag.
- There are no LSL functions that allow you to set projector values (texture, FOV, focus, and ambiance).
Related Articles
Functions
• | llSetPrimitiveParams | |||
• | llSetLinkPrimitiveParams | |||
• | llSetLinkPrimitiveParamsFast | |||
• | llGetPrimitiveParams | |||
• | llGetLinkPrimitiveParams |
Articles
• | Color in LSL |
Examples
<lsl> integer isLightTurnedOn;
default {
touch_start(integer total_number) {
// toggle isLightTurnedOn between TRUE and FALSE
isLightTurnedOn = !isLightTurnedOn;
if (isLightTurnedOn) { llSetPrimitiveParams([ PRIM_FULLBRIGHT, ALL_SIDES, FALSE, PRIM_POINT_LIGHT, FALSE, ZERO_VECTOR, 1.0, 10.0, 0.6]); } else { vector COLOR_ORANGE = <1.000, 0.522, 0.106>;
llSetPrimitiveParams([ PRIM_FULLBRIGHT, ALL_SIDES, TRUE, PRIM_POINT_LIGHT, TRUE, COLOR_ORANGE, 1.0, 10.0, 0.6]); } }
} </lsl>