Je suis débutant et j'essaye de comprendre comment faire bouger des objet etc...
J'ai fait le code ci dessous pour bouger mon objet "barre". J'ai quelques soucis, donc voici mes 3 questions:
1) - Pourquoi la vitesse de translation de mon objet reste inchangée quelle que soit la valeur de ma variable vitesse_barre?
En effet, que je mette vitesse_barre = 1f; ou vitesse_barre= 5000f; ça ne change absolument rien (même en déclarant un int à la place).
2) - Comment je fais pour que mon objet barre ne traverse plus les murs qu'il rencontre?
Car j'ai tout essayé, j'ai mis des box collider à mes murs et ma barre, désactivé IsTrigger, mais rien n'y fait
Code : Tout sélectionner
public class Barre : MonoBehaviour
{
public float vitesse_barre = 1f;
// Start is called before the first frame update
void Start()
{
}
// Update is called once per frame
void Update()
{
// ici j'ai mis -Input car je veux inverser la direction
transform.Translate(Vector3.right * -Input.GetAxis("Horizontal") * vitesse_barre* Time.deltaTime);
}
3) - Je viens de voir un nouveau problème en vérifiant mes boxs de collisions avec des rigidbody: mes objet s'arrentent là où il n'y a pas de box de collision. J'ai dupliqué ma barre et observé ce qui se passe quand elle tombe à différent endroits sur mon sol (info utile: le sol est un carré sur lequel j'ai extrudé tous les bords), et regardez ce qu'il se passe:
Pourtant, les colliders de mon sol sont bien au niveau du bas et non au niveau des bords non?:
Merci beaucoup pour votre aide vous êtes supers