2009-06-19 6 views
3

LSL (Linden Scripting Language) prend en charge divers effets de particules à l'aide de la fonction llParticleSystem. Quels sont les bons paramètres à donner à cette fonction pour faire planer une image non-mouvante sur le prim?Comment créer une image fixe à partir de particules en LSL?

(Cette question a été posée dans le groupe de discussion Academy Script aujourd'hui. Je reposter la question et ma réponse ici pour aider à obtenir plus d'utilisateurs LSL dans Stack Overflow.)

Répondre

4

Le script suivant crée un vol stationnaire stationnaire image en particules, en utilisant la première texture trouvée dans le contenu du prim.

ParticleImage(string tex, vector scale) 
{ 
    list params; 
    //set texture and size 
    params += [PSYS_SRC_TEXTURE, tex]; 
    params += [PSYS_PART_START_SCALE, scale]; 
    //make particles follow source 
    params += [PSYS_PART_FLAGS, PSYS_PART_FOLLOW_SRC_MASK]; 
    //use drop pattern, which has no velocity 
    params += [PSYS_SRC_PATTERN, PSYS_SRC_PATTERN_DROP]; 
    llParticleSystem(params); 
} 

default 
{ 
    state_entry() 
    { 
     //make the prim invisible 
     llSetAlpha(0.0, ALL_SIDES); 
     if (llGetInventoryNumber(INVENTORY_TEXTURE)) 
     { 
      string tex = llGetInventoryName(INVENTORY_TEXTURE, 0); 
      ParticleImage(tex, <1.0, 1.0, 0.0>); 
     } 
    } 
} 
Questions connexes