Page 1 sur 1

Changer la couleur et la texture d'un objet

Publié : 13 Juil 2019 18:46
par zula23
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

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

Publié : 13 Juil 2019 18:53
par EmileF
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

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

Publié : 13 Juil 2019 19:06
par zula23
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 ?

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

Publié : 13 Juil 2019 19:40
par EmileF
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.

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

Publié : 13 Juil 2019 23:00
par zula23
Ha d'accord je comprend mieux, merci :-D

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

Publié : 14 Juil 2019 00:41
par zula23
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)

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

Publié : 14 Juil 2019 09:03
par EmileF
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.

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

Publié : 14 Juil 2019 10:40
par zula23
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

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

Publié : 14 Juil 2019 12:49
par EmileF
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.