Couleur et Scripting

From Second Life Wiki
Revision as of 04:59, 18 August 2009 by Iko Aker (talk | contribs)
Jump to navigation Jump to search

Utiliser les couleurs dans les scripts LSL est relativement simple. Cela fonctionne en combinant les valeurs de rouge, vert et blue. Elles sont stokées de la manière suivante:

< Valeur Rouge, Valeur Vert, Valeur Bleu >

Chaque valeur de rouge, vert ou bleu sont comprises entre 0.0 (aucune saturation de couleur) et 1.0 (saturation complète de la couleur). Ces valeurs sont déterminées en combinant les couleurs comme s'il s'agissait de lumières et non des peintures. Ainsi, la combinaison des ces dernières en saturation complète donne du blanc. La combianiason de des ces trois valeurs sans aucune saturation donne du noir.

Si deux des valeurs n'ont aucune saturation et la troisième est saturée, vous obtenez uns couleur pure:

Couleur Hexadecimal pour CSS/HTML Vecteur pour LSL
Rouge #ff0000 <1.0, 0.0, 0.0>
Vert #00ff00 <0.0, 1.0, 0.0>
Bleu #0000ff <0.0, 0.0, 1.0>
Orange #ff7f00 <1.0, 0.5, 0.0>
Cyan #00ffff <0.0, 1.0, 1.0>
Rose #ff007f <1.0, 0.0, 0.5>
Jaune #ffff00 <1.0, 1.0, 0.0>
Violet #990099 <0.6, 0.0, 0.6>
Marron #664c33 <0.4, 0.2, 0.3>
Blanc #ffffff <1.0, 1.0, 1.0>
Gris #787878 <0.5, 0.5, 0.5>
Noir #000000 <0.0, 0.0, 0.0>

Converting Hexadecimal to Vectors

To convert from a hexadecimal values used in CSS or HTML to ones usable in Second Life scripting, first convert the number for the red, green and blue saturation from hexadecimal to decimal, then divide that number by 255. Do bear in mind that 3-digit codes are a shorthand form, so each digit should be doubled (F becomes FF, 4 becomes 44, 0 becomes 00 etc)

Form\Channels Red Green Blue
Hexadecimal FF CC 00
Decimal 255 204 0
Saturation Float 1.0 0.8 0.0

FF = total saturation

00 = no saturation

00 on the web = 0 in Second Life

FF on the web = 1 in Second Life

Therefore:

FF00FF = <1.0,0.0,1.0>

Contributor

FlipperPA Peregrine