PRIM POINT LIGHT/de

From Second Life Wiki
Jump to navigation Jump to search

Beschreibung

Konstante: integer PRIM_POINT_LIGHT = 23;

Die integer Konstante PRIM_POINT_LIGHT hat den Wert 23

Genutzt um die Lichtquellenkonfiguration eines Prims zu beziehen oder zu setzen

llSetPrimitiveParams

[ PRIM_POINT_LIGHT, integer boolean, vector Farbe, float Intensität, float Radius, float Abnehmend ]
• integer boolean TRUE aktiviert, FALSE deaktiviert
• vector Farbe Farbe als RGB-Wert <R, G, B> (<0.0, 0.0, 0.0> = Schwarz, <1.0, 1.0, 1.0> = Weiß)
• float Intensität rangiert zwischen 0.0 und 1.0
• float Radius rangiert zwischen 0.1 und 20.0
• float Abnehmend rangiert zwischen 0.01 und 2.0

Wenn mit llSetPrimitiveParams & llSetLinkPrimitiveParams genutzt

llGetPrimitiveParams

llGetPrimitiveParams([ PRIM_POINT_LIGHT ]);

Gibt die Liste [ integer boolean, vector Farbe, float Intensität, float Radius, float Abnehmend ]

• integer boolean TRUE aktiviert, FALSE deaktiviert
• vector Farbe Farbe als RGB-Wert <R, G, B> (<0.0, 0.0, 0.0> = Schwarz, <1.0, 1.0, 1.0> = Weiß)
• float Intensität rangiert zwischen 0.0 und 1.0
• float Radius rangiert zwischen 0.1 und 20.0
• float Abnehmend rangiert zwischen 0.01 und 2.0

Ähnliche Artikel

Konstanten

• integer CHANGED_SHAPE

Funktionen

•  llSetPrimitiveParams Setzt die Parameter eines Prims
•  llSetLinkPrimitiveParams Setzt die Parameter eines gelinkten Prims
•  llGetPrimitiveParams Bezieht Parameter eines Prims

Ereignisse

•  changed Wird bei einer Änderung ausgelößt

Artikel

•  Farbe in LSL

Beispiele

<lsl> // simple light source demonstrator // 8feb07 "tetsumo kuri" // thanks to squee janitor for line to dissect

integer light_s = TRUE; // "_s" für Status

default {

   state_entry()
   {
     //  llSetText("click me",<1,0,0.6>,.5);  // falls ihr Beschriftungen mögt
   }
   touch_start(integer total_number)
   {
       if ( light_s )
       { 
           light_s = FALSE;
           // Volle Helligkeit hat in dem "neuen" (2006er) Lichtmodell nichts mehr mit Licht zu tun
           // Sie sieht dennoch schick aus
           llSetPrimitiveParams([PRIM_FULLBRIGHT,ALL_SIDES,FALSE]);
             
           llSetPrimitiveParams([PRIM_POINT_LIGHT, FALSE,   // Falls hier FALSE esetzt wird, ist Licht aus
                                    <0.0,1.0,0.0>,1.0, 10.0, 0.5]); // Rest der Parameter ist egal
       }            
       else
       {
           light_s = TRUE;
           //llSetPrimitiveParams([PRIM_FULLBRIGHT,ALL_SIDES,TRUE]);   //Lasse dies auskommentiert
           llSetPrimitiveParams([PRIM_POINT_LIGHT,TRUE,
                                   <1.0,0.7,1.0>,  // Licht-Farb-Vektor: 0.0-1.0 *3
                                   1.0,            // Intensität   (0.0-1.0)
                                   10.0,           // Radius       (.1-20.0)
                                   0.6 ]);         // Abnehmend    (.01-2.0)
               
           // dies hätte in einer Zeile gemacht werden können, z.B.     
           //llSetPrimitiveParams([PRIM_FULLBRIGHT,ALL_SIDES,FALSE,PRIM_POINT_LIGHT,TRUE,<1.0,1.0,0.5>,20,1.0,0.5]);
           //      ... aber das ist schwer zu lesen...       
       }
       //llSay(0, " Klick!");
   }

} </lsl>

Deep Notes

Nach JIRA-Issues suchen, die sich hierauf beziehen

Signature

integer PRIM_POINT_LIGHT = 23;