Salut,
A vrai dire ce script m'a posé un soucis. Du coup, j'ai essayé celui-la
http://www.unifycommunity.com/wiki/inde ... -_Extended qui FONCTIONNE
a) Création d'un cube
b) Création d'un "matérial" avec le Shader "Particle/additive"
c) Lui affectuer la texture présente sur le lien précedent. Celle-ci :
d) Coller le "matérial" ainsi texturé au cube.
e) Coller le script suivant au cube et hop. Ca marche
Code : Tout sélectionner
//vars for the whole sheet
var colCount : int = 4; // (Texture constituée de 4 colonnes )
var rowCount : int = 4;// ( et de 4 lignes)
//vars for animation
var rowNumber : int = 0; //Zero Indexed ( Ligne de la première "cellule" affichée)
var colNumber : int = 0; //Zero Indexed ( Colonne de la première "cellule" affichée)
var totalCells : int = 4; // (Nombre total de cellules affichées. 4, le maxi pour un ligne complète. )
var fps : int = 10; // vitesse du défilement. Donc de l'affichage des cellules
var offset : Vector2; //Maybe this should be a private var
//Update
function Update () { SetSpriteAnimation(colCount,rowCount,rowNumber,colNumber,totalCells,fps); }
//SetSpriteAnimation
function SetSpriteAnimation(colCount : int,rowCount : int,rowNumber : int,colNumber : int,totalCells : int,fps : int){
// Calculate index
var index : int = Time.time * fps;
// Repeat when exhausting all cells
index = index % totalCells;
// Size of every cell
var size = Vector2 (1.0 / colCount, 1.0 / rowCount);
// split into horizontal and vertical index
var uIndex = index % colCount;
var vIndex = index / colCount;
// build offset
// v coordinate is the bottom of the image in opengl so we need to invert.
offset = Vector2 ((uIndex+colNumber) * size.x, (1.0 - size.y) - (vIndex+rowNumber) * size.y);
renderer.material.SetTextureOffset ("_MainTex", offset);
renderer.material.SetTextureScale ("_MainTex", size);
}
Si tu veux utiliser ce script avec cette texture
http://www.unifycommunity.com/wiki/imag ... on_135.png
il faut changer certains paramètres :
Code : Tout sélectionner
var colCount : int = 24;
var rowCount : int = 1;
var totalCells : int = 24;
Ce petit script est génial. Il permet d'utiliser des outils comme ParticleIllusion
J'ai ajouté des commentaires au script
Have fun, comme disent les "anglois"
JP