[RESOLU] Charger un Physical material
Publié : 21 Sep 2020 02:32
Salut les copains,
Dans un script, j'ai crée un cube, et je souhaite lui assigner un Physical material que j'ai déjà crée (et qui s'appelle "Rebond") mais je n'y arrive pas.
Voilà ma hiérarchie:
(bon par contre j'ai pas pensé à faire un dossier PhysicalMaterial au debut de mon projet, c'est pour ça que dans mon script je vais chercher dans mon dossier "Material" au lieu de "PhysicalMaterials")
Et voici le script avec lequel j'essaye de réccupérer mon "Rebond":
(ma pièce2 a déjà un box collider, raison pour laquelle je n'en crée pas un)
Pour toutes ces façons, Unity ne me met aucune erreur, seulement quand je lance le jeu et que je vais voir dans le material de ma Box Collider, il n'y a rien
Sauriez vous comment faire? Merci à vous
Dans un script, j'ai crée un cube, et je souhaite lui assigner un Physical material que j'ai déjà crée (et qui s'appelle "Rebond") mais je n'y arrive pas.
Voilà ma hiérarchie:
(bon par contre j'ai pas pensé à faire un dossier PhysicalMaterial au debut de mon projet, c'est pour ça que dans mon script je vais chercher dans mon dossier "Material" au lieu de "PhysicalMaterials")
Et voici le script avec lequel j'essaye de réccupérer mon "Rebond":
(ma pièce2 a déjà un box collider, raison pour laquelle je n'en crée pas un)
Code : Tout sélectionner
GameObject piece2;
piece2 = GameObject.CreatePrimitive(PrimitiveType.Cube);
//ajout de la physique
piece2.AddComponent<Rigidbody>();
piece2.GetComponent<Rigidbody>().mass = 3f;
// Voici les façons différentes que j'ai essayé (il en faut qu'une seule bien entendu, mais
// c'est pour vous montrer ce que j'ai essayé:
var mat = Resources.Load<PhysicMaterial>("Materials/Rebond");
var mat = Resources.Load<PhysicMaterial>("Assets/Materials/Rebond");
var mat = Resources.Load<Material>("Assets/Materials/Rebond");
piece2.GetComponent<BoxCollider>().material = new PhysicMaterial(mat.name);
piece2.GetComponent<BoxCollider>().material = (PhysicMaterial)Resources.Load("Materials/Rebond");
Sauriez vous comment faire? Merci à vous