Resource.load textur2D

Questions à propos du scripting. Hors Shader, GUI, Audio et Mobile.
royalskunk
Messages : 163
Inscription : 30 Juin 2010 00:53

Resource.load textur2D

Message par royalskunk » 14 Jan 2011 13:50

Bonjour à tous,
Je sollicite encore votre aide. Je réalise un jeu de carte et j'aimerais lui assigné une texture 2d en fonction de la carte qui est sortie. J'utilise array pour enregistrer les cartes.

Pour l'instant j'arrive a changer la texture en fonction de la carte mais je dois écrire une ligne pour chaque carte.

var sorte =random.couleur;

if (sorte==1){

renderer.material.mainTexture = Resources.Load("1",Texture2D);
}
if (sorte==2){

renderer.material.mainTexture = Resources.Load("2",Texture2D);
}

N'y aurait il pas une solution plus simple ? :?:
Ou de dire a quel texture correspond a quel case du tableau?

Avatar de l’utilisateur
Freelax
Messages : 1595
Inscription : 30 Déc 2009 23:02
Localisation : Niort
Contact :

Re: Resource.load textur2D

Message par Freelax » 14 Jan 2011 14:02

salut!

quant tu dis
en fonction de la carte qui est sortie
c'est un random int?
Image

royalskunk
Messages : 163
Inscription : 30 Juin 2010 00:53

Re: Resource.load textur2D

Message par royalskunk » 14 Jan 2011 14:08

Hello Freelax,
Je débute avec les tableaux ,le premier random correspond au no de la carte 1,2,et 11 pour valet etc...
et le deuxième correspond a la sorte de la carte coeur,carreau etc..

var hand1 = Array(Random.Range(1, 15),Random.Range(1, 5));
couleur=hand1[1];

j'aimerais récupérer ce 2 valeurs pour lui assigner la bonne texture à la carte...
Dois je utiliser .Length et comment ?

Avatar de l’utilisateur
Freelax
Messages : 1595
Inscription : 30 Déc 2009 23:02
Localisation : Niort
Contact :

Re: Resource.load textur2D

Message par Freelax » 14 Jan 2011 14:23

alors enfaite faut que tu fasse autrement ;)

tu crée un array qui va contenir toutes les textures par resourcesLoad et un int qui sera ton random

Code : Tout sélectionner

public Texture2D[] TexCards;
public int RandCard;
Ensuite dans ton start tu charge le contenu du dossier dans l'array

Code : Tout sélectionner

void Start ()
    {
	    TexCards= Resources.LoadAll("Cards", typeof(Texture2D));
    }	
Ensuite pour appliquer ta texture

Code : Tout sélectionner

RandCard = Random.Range(x,TexCards.Length);
renderer.material.mainTexture = TexCards[RandCard];
voila ;)
Dernière édition par Freelax le 14 Jan 2011 14:37, édité 1 fois.
Image

royalskunk
Messages : 163
Inscription : 30 Juin 2010 00:53

Re: Resource.load textur2D

Message par royalskunk » 14 Jan 2011 14:36

merci pour l'explication je vais de suite modifier et tester

Avatar de l’utilisateur
Freelax
Messages : 1595
Inscription : 30 Déc 2009 23:02
Localisation : Niort
Contact :

Re: Resource.load textur2D

Message par Freelax » 14 Jan 2011 14:43

par contre dans mon exemple j'ai pas pris en compte que tu avais 2 rand à faire :roll: tu en a vraiment besoin?
Image

royalskunk
Messages : 163
Inscription : 30 Juin 2010 00:53

Re: Resource.load textur2D

Message par royalskunk » 14 Jan 2011 14:44

euh en javascript c'est possible aussi d'utilser le int ?
oui un rand pour la carte et l'autre pour la sorte de carte pique ,coeur...

Avatar de l’utilisateur
Freelax
Messages : 1595
Inscription : 30 Déc 2009 23:02
Localisation : Niort
Contact :

Re: Resource.load textur2D

Message par Freelax » 14 Jan 2011 14:55

oui bien sur, par contre pour les déclarations c'est,

Code : Tout sélectionner

var TexCards:Texture2D[];
var RandCard:int;
;)
Image

royalskunk
Messages : 163
Inscription : 30 Juin 2010 00:53

Re: Resource.load textur2D

Message par royalskunk » 14 Jan 2011 14:57

ok merci bien pas encore eu l'occasion d'utiliser ce int, vais me pencher la dessus, encore merci d'avoir pris le temps de m'aider

Avatar de l’utilisateur
Freelax
Messages : 1595
Inscription : 30 Déc 2009 23:02
Localisation : Niort
Contact :

Re: Resource.load textur2D

Message par Freelax » 14 Jan 2011 15:00

pas de soucis ;)
Image

Répondre

Revenir vers « Scripting »