PRIM POINT LIGHT/fr

From Second Life Wiki

Jump to: navigation, search

Contents

Description

Constante: integer PRIM_POINT_LIGHT = 23;

La constante PRIM_POINT_LIGHT de type integer a la valeur 23

PRIM_POINT_LIGHT est utilisé pour paramètrer les effets de lumière des prims

[ PRIM_POINT_LIGHT, integer booléen, vector couleur, float intensité, float rayon, float vitesse_extinction ]

• integer booléen TRUE activé, FALSE désactivé
• vector couleur Couleur en RVB <R, V, B> (<0.0, 0.0, 0.0> = noir, <1.0, 1.0, 1.0> = blanc)
• float intensité va de 0.0 à 1.0
• float rayon va de 0.1 à 10.0
• float vitesse_extinction va de 0.01 à 1.0

Lorsque utilisé avec llSetPrimitiveParams & llSetLinkPrimitiveParams

llGetPrimitiveParams([ PRIM_POINT_LIGHT ]);

Renvoie le list [ integer booléen, vector couleur, float intensité, float rayon, float vitesse_extinction ]
• integer booléen TRUE activé, FALSE désactivé
• vector couleur Couleur en RVB <R, V, B> (<0.0, 0.0, 0.0> = noir, <1.0, 1.0, 1.0> = blanc)
• float intensité va de 0.0 à 1.0
• float rayon va de 0.1 à 10.0
• float vitesse_extinction va de 0.01 à 1.0

Articles connexes

Constantes

•  CHANGED_SHAPE

Fonctions

•  llSetPrimitiveParams Permet de changer les paramètres d'une prim
•  llSetLinkPrimitiveParams Permet de changer les paramètres d'une prim liée
•  llGetPrimitiveParams Renvoie les paramètres d'une prim

Evénement

•  changed Evènement déclenché par une modification de la prim

Exemples

 
// Demo de gestion d'une source de lumière unique
// 8fev07 "tetsumo kuri"
// Merci à squee janitor pour son analyse
 
integer light_s = TRUE;     //  "_s" pour indiquer qu'il s'agit d'un statut
 
default
{
    state_entry()
    {
      //  llSetText("touchez moi",<1,0,0.6>,.5);  // au cas ou vous voudriez ajouter une étiquette
    }
 
    touch_start(integer total_number)
    {
        if ( light_s )
        { 
            light_s = FALSE;
 
            // fullbright (pleine lumière) n'a rien à voir avec la gestion des lumières introduite en 2006.
            // Le mode pleine lumière peut améliorer le rendu malgré tout
            llSetPrimitiveParams([PRIM_FULLBRIGHT,ALL_SIDES,FALSE]);
 
            llSetPrimitiveParams([PRIM_POINT_LIGHT, FALSE,   // si FALSE, la lumière est éteinte
                                     <0.0,1.0,0.0>,1.0, 10.0, 0.5]); // les autres paramètres sont sans importance
        }            
        else
        {
            light_s = TRUE;
            //llSetPrimitiveParams([PRIM_FULLBRIGHT,ALL_SIDES,TRUE]);   //laissons l'activation de ce mode en commentaire pour le moment
            llSetPrimitiveParams([PRIM_POINT_LIGHT,TRUE,
                                    <1.0,0.7,1.0>,  // couleur RVB          (varie entre 0.0 et 1.0 x3)
                                    1.0,            // intensité            (varie entre 0.0 et 1.0)
                                    10.0,           // rayon                (varie entre 0.1 et 10.0)
                                    0.6 ]);         // vitesse d'extinction (varie entre 0.01 et 1.0)
 
            // la même chose peut être réalisée en une seule ligne :
            // llSetPrimitiveParams([PRIM_FULLBRIGHT,ALL_SIDES,FALSE,PRIM_POINT_LIGHT,TRUE,<1.0,1.0,0.5>,20,1.0,0.5]);
            //      ... mais cela peut s'avérer plus difficile à lire...       
        }
        //llSay(0, " Clic!");
    }
}
 
Personal tools