Changer la couleur et la texture d'un objet

Pour les scripts écrits en C#
Règles du forum
Merci de respecter la NOMENCLATURE suivante pour vos TITRES de messages :

Commencez par le niveau de vos scripts
DB = Débutant
MY = Moyen
CF = Confirmé

Puis le domaine d'application
-RS = Réseau
-AL = Algorithmie

Exemple :

[DB-RS] Mouvement perso multijoueur
zula23
Messages : 11
Inscription : 13 Juil 2019 18:42

Changer la couleur et la texture d'un objet

Message par zula23 » 13 Juil 2019 18:46

Bonjour,

J'aimerai savoir comment modifier directement via le code la couleur ainsi que la texture d'un objet,
j'i essayé pour l'objet "projectile" par exemple:

gameObject.GetComponent<Projectile>().material.color = new Color(1f, 0f, 0f, 1f);

mais j'ai une erreur avec le material.color
j'ai essayé aussi :

Code : Tout sélectionner

 Renderer rend = GetComponent<Renderer>();
  rend.material.shader = Shader.Find("_Color");
    rend.material.SetColor("_Color", Color.green);
mais cela ne fonctionne pas non plus


et pour la texture je n'ai pas trouver

merci d'avance

EmileF
Messages : 673
Inscription : 18 Mars 2017 19:39

Re: Changer la couleur et la texture d'un objet

Message par EmileF » 13 Juil 2019 18:53

Salut,

Tu devrais mettre les balises quand tu affiches du code c'est plus lisible

Pour ce qui est

Code : Tout sélectionner

gameObject.GetComponent<Projectile>().material.color = new Color(1f, 0f, 0f, 1f);
ça ne peut pas marcher, il te faut aller chercher le renderer

Code : Tout sélectionner

gameObject.GetComponent<Projectile>().GetComponent<MeshRenderer>().material.color = new Color(1f, 0f, 0f, 1f);
Pour ce qui est de la texture c'est la même procédure, (je crois).

Bon courage
La différence entre l'intelligence et la stupidité est que l'intelligence est limitée.

zula23
Messages : 11
Inscription : 13 Juil 2019 18:42

Re: Changer la couleur et la texture d'un objet

Message par zula23 » 13 Juil 2019 19:06

Merci pour la réponse rapide, mais je ne sait pas pourquoi cela ne fonctionne pas,pourtant il devrait fonctionner car il est bien indiquer dans le bon chemin:

Code : Tout sélectionner

Projectile component = gameObject.GetComponent<Projectile>();
si c'est un prefab, je dois modifier mesh par prefab ?

EmileF
Messages : 673
Inscription : 18 Mars 2017 19:39

Re: Changer la couleur et la texture d'un objet

Message par EmileF » 13 Juil 2019 19:40

Sûrement, mais comme je te disais le matérial n'est pas dans le component "Projectile", mais dans son component "MeshRenderer" s'il existe.
La différence entre l'intelligence et la stupidité est que l'intelligence est limitée.

zula23
Messages : 11
Inscription : 13 Juil 2019 18:42

Re: Changer la couleur et la texture d'un objet

Message par zula23 » 13 Juil 2019 23:00

Ha d'accord je comprend mieux, merci :-D

zula23
Messages : 11
Inscription : 13 Juil 2019 18:42

Re: Changer la couleur et la texture d'un objet

Message par zula23 » 14 Juil 2019 00:41

Et si je veux editer une valeur d'une classe , depuis une autre, par exemple je veux editer le leaderboardId qui se situe dans la classe SteamDownloadRequest ( sachant qu'il vient d'une autre dll : game.dll)
Dernière édition par zula23 le 30 Juil 2019 18:30, édité 1 fois.

EmileF
Messages : 673
Inscription : 18 Mars 2017 19:39

Re: Changer la couleur et la texture d'un objet

Message par EmileF » 14 Juil 2019 09:03

Là, je ne sais pas, mais je pense que tu devrais approfondir tes connaissances en C#, car manifestement tes bases ne semble pas venir de ce langage, ainsi que les particularités concernant Unity.
La différence entre l'intelligence et la stupidité est que l'intelligence est limitée.

zula23
Messages : 11
Inscription : 13 Juil 2019 18:42

Re: Changer la couleur et la texture d'un objet

Message par zula23 » 14 Juil 2019 10:40

Oui je n'ai que les connaissances du C et un peu du C++, et j'sssaye de comprendre avec unity3d mais ce n'esst pas facile

EmileF
Messages : 673
Inscription : 18 Mars 2017 19:39

Re: Changer la couleur et la texture d'un objet

Message par EmileF » 14 Juil 2019 12:49

Tu devrais peut-être essayer de compléter tes compétences avec ce genre de tuto
https://openclassrooms.com/fr/courses/2 ... oo-et-le-c
et avec le manuel d'unity qui est complet, énorme, mais indispensable pour débuter avec unity.
La différence entre l'intelligence et la stupidité est que l'intelligence est limitée.

Répondre

Revenir vers « (C#) CSharp »