Transform.position d'un object dans un vecteur

Fermé
sami - 11 avril 2018 à 19:31
 sami - 12 avril 2018 à 13:02
Bonjour, je suis entrain de faire un jeu vidéo en 2d sur unity, et vue que je viens tout juste d'intégrer l'utilisation de vecteurs (sur unity), j'ai eu une erreur sur la création d'un vecteur à partir des coordonnées d'un objet pour le pouvoir le lié à la direction d'un raycast d'un autre object.

En gros pour faire simple je veut faire un raycast qui s'oriente vers un object, ou bien un raycast qui suit l'orientation d'une face lui appartenant (si l'object tourne, le raycast tourne aussi)

C'est la dernière idée qui m'intéresse le plus, mais je suis encore un débutant, et je ne suis même pas sûr qu'elle existe.


using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class raycast: MonoBehaviour
{

public string one;
public Transform target;
Vector3 vect = new Vector3(1, 0, -3);

//initialization
void Start()
{}

//once per frame
void Update()
{

//simulation du rayon (affichage only editor)
Debug.DrawRay(transform.position, vecu * 10, Color.red);

//raycast
RaycastHit hit;

if(Physics.Raycast(transform.position, vect, out hit))
{

//condition if(object= object que je veut), je ne l'ai pas mis pour ne pas surcharger


transform.LookAt(target);

//je voudrais remplacer les coordonnees (1,0,-3) par celle de l'object detecter (et sans erreur :) )


}


}

}


Après le but aussi ce n'est pas d'avoir les réponses et galérer juste après, je suis un perdu avec la doc et certains tutos, si certains pouvait m'en proposer le plus complet et surtout le plus clair pour les débutants, Merci d'avance.

1 réponse

je fais un petit up, j'ai mis

Vector3 vect= autre.transform.position;

que j'ai bien sûr assigner correctement (dans le code et "manuellement")

quand je fais un Debug.Log sur un des axes ça marche parfaitement mais quand je fais

Debug.DrawRay(transform.position, vect);


J'ai l'erreur suivante, "Error CS0103, the name 'vect' does not exist in the current context"
0