J'utilise des Collider "isTrigger" sur mon personnage pour déplacer celui ci, mais lorsque je le déplace en runtime le collider qui génère l'événement ne se déplace pas et reste à sa position d'origine. Alors que dans l’éditeur le Collider à bien suivi le gameobject auquel il est assigné. J'ai chercher à désactiver puis réactiver le collider lors du "lâché" mais cela ne change rien. je ne peux reprendre que de la position initiale du collider alors que le gameobject est déplacé
J'ai vu en cherchant sur Google que d'autre ont déjà eu le soucis je suis en version 2019.3.4f1 , et j'ai essayé de changer de version en 2019.3.1f1 / 2019.2.17f1 / 2018.4.18f1 ( a chaque fois en créant un nouveau projet avec le strict nécessaire pour le test. Mais toujours le même problème.)
je sais que mon code n'est pas très joli et certainement perfectible je débute tout juste en C#.
Merci beaucoup
Code : Tout sélectionner
using UnityEngine;
using Valve.VR;
public class OnCollisionEnterTargetIK : MonoBehaviour
{
public SteamVR_Action_Boolean GrabGrip;
[SerializeField]
public GameObject Target01;
public GameObject Targetbody01;
private void Start()
{
if (Targetbody01 == null)
{
_ = Targetbody01 == GameObject.FindWithTag("BodyTarget");
}
}
private void OnTriggerStay(Collider other)
{
if (GameObject.Find("LeftHand"))
{
if (GrabGrip.GetStateDown(SteamVR_Input_Sources.LeftHand))
{
Target01.transform.parent = GameObject.Find("LeftHand").transform;
}
}
if (GameObject.Find("RightHand"))
{
if (GrabGrip.GetStateDown(SteamVR_Input_Sources.RightHand))
{
Target01.transform.parent = GameObject.Find("RightHand").transform;
}
}
}
private void Update()
{
if (GrabGrip.GetStateUp(SteamVR_Input_Sources.LeftHand) && (Target01.transform.parent == GameObject.Find("LeftHand").transform))
{
Target01.transform.parent = Targetbody01.transform.parent;
}
if (GrabGrip.GetStateUp(SteamVR_Input_Sources.RightHand) && (Target01.transform.parent == GameObject.Find("RightHand").transform))
{
Target01.transform.parent = Targetbody01.transform.parent;
}
}
}