Demande rapide sur Raycast
Demande rapide sur Raycast
Bonjour
J'ai cherché sur la doc principale d'Unity , les directions du raycasthit.
Je tournais en rond.
Pourriez-vous me confirmer si j'ai bon
avant FORWARD
arrière BACK
haut UP
bas DOWN
gauche LEFT
driote RIGHT
Meric
J'ai cherché sur la doc principale d'Unity , les directions du raycasthit.
Je tournais en rond.
Pourriez-vous me confirmer si j'ai bon
avant FORWARD
arrière BACK
haut UP
bas DOWN
gauche LEFT
driote RIGHT
Meric
- boubouk50
- ModoGenereux
- Messages : 6216
- Inscription : 28 Avr 2014 11:57
- Localisation : Saint-Didier-en-Bresse (71)
Re: Demande rapide sur Raycast
Tu as les infos ici:
Vector3 sur Unity
Vector3 sur Unity
"Ce n'est pas en améliorant la bougie, que l'on a inventé l'ampoule, c'est en marchant longtemps."
Nétiquette du forum
Savoir faire une recherche
Apprendre la programmation
Nétiquette du forum
Savoir faire une recherche
Apprendre la programmation
Re: Demande rapide sur Raycast
Merci
J'avais beau chercher avec différentes forme de recherche je tombais toujours sur le raycast de caméra
J'avais beau chercher avec différentes forme de recherche je tombais toujours sur le raycast de caméra
Re: Demande rapide sur Raycast
Rebonjour
Voici un bout de mon code.
J'ai bien mis back pour l'arrière mais Unity me dit que ce n'est pas bon !?
Assets/3D/Vehicules 3D/AFFICEHR_MASQUER_Mesh.js(58,52): BCE0019: 'back' is not a member of 'UnityEngine.Transform'.
Voici un bout de mon code.
J'ai bien mis back pour l'arrière mais Unity me dit que ce n'est pas bon !?
Assets/3D/Vehicules 3D/AFFICEHR_MASQUER_Mesh.js(58,52): BCE0019: 'back' is not a member of 'UnityEngine.Transform'.
Code : Tout sélectionner
var DetectionAvant20m : RaycastHit; //crée le rayon "DetectionAvant20m" et sa fonction de heurt "RaycastHit"
if (Physics.Raycast (transform.position, transform.back, DetectionAvant20m, 20 ))
// DetectionAvant20m est égal à 20m fdevant le vl
{
if(DetectionAvant20m.collider.gameObject.tag=="RETROVISEUR" )
{
renderer.enabled = true;
}
- boubouk50
- ModoGenereux
- Messages : 6216
- Inscription : 28 Avr 2014 11:57
- Localisation : Saint-Didier-en-Bresse (71)
Re: Demande rapide sur Raycast
Oui Back n'est pas un vecteur de transform
Je pense que tu voudrais utiliser plutôt à la place de
transform.forward est le vecteur +Z de ton gameObjet
vector3.forward est le vecteur unitaire [0,0,1]
ce n'est pas la même chose.
Je pense que tu voudrais utiliser plutôt
Code : Tout sélectionner
-transform.forward
Code : Tout sélectionner
transform.back
vector3.forward est le vecteur unitaire [0,0,1]
ce n'est pas la même chose.
"Ce n'est pas en améliorant la bougie, que l'on a inventé l'ampoule, c'est en marchant longtemps."
Nétiquette du forum
Savoir faire une recherche
Apprendre la programmation
Nétiquette du forum
Savoir faire une recherche
Apprendre la programmation
Re: Demande rapide sur Raycast
Là je bloque complètement
1 Le code semble (?) bon car pas d'erreur d'Unity
2 Le bus a une box collider
3 Le retroviseur en a aussi une et est bien taggué en RETROVISEUR
Où mon erreur ?
Merci
1 Le code semble (?) bon car pas d'erreur d'Unity
2 Le bus a une box collider
3 Le retroviseur en a aussi une et est bien taggué en RETROVISEUR
Où mon erreur ?
Merci
Code : Tout sélectionner
#pragma strict
/*
A METTRE SUR LES VEHICULES
DEVANT / DERRIERE
Tagguer la caméra, ou bien le rétrovieur, en RETROVISEUR
*/
private var Retroviseur_Maya : GameObject;// Tag en RETROVISEUR
function Update ()
{
/* pour les objets par devant et derrière
la caméra avance et le rayon qui est derriere le véhicule ( DetectionArriere20m) détecte l'objet et donc le renderer devient false
la caméra passe et le rayon qui est devant le véhicule ( DetectionAvant20m) détecte l'objet et donc le renderer devient true
*/
var DetectionAvant10m : RaycastHit; //crée le rayon "DetectionAvant10m" et sa fonction de heurt "RaycastHit"
if (Physics.Raycast (transform.position, -transform.forward, DetectionAvant10m, 10))
// DetectionAvant10m est égal à 10m devant le vl, -forward pour inverser le sens
{
if(DetectionAvant10m.collider.gameObject.tag=="RETROVISEUR" )
{
renderer.enabled = true;
}
}
var DetectionArriere30m : RaycastHit; //crée le rayon "DetectionArriere30m" et sa fonction de heurt "RaycastHit"
if (Physics.Raycast (transform.position, transform.forward, DetectionArriere30m, 30 ))
// DetectionArriere30m est égal à 30 m derriere le VL masque le renderer quand il touche l'objet taggué en RETROVISEUR
{
if(DetectionArriere30m.collider.gameObject.tag=="RETROVISEUR" )
{
renderer.enabled = false;
}
}
}
- boubouk50
- ModoGenereux
- Messages : 6216
- Inscription : 28 Avr 2014 11:57
- Localisation : Saint-Didier-en-Bresse (71)
Re: Demande rapide sur Raycast
C'est quoi la question? C'est quoi qui va pas?
"Ce n'est pas en améliorant la bougie, que l'on a inventé l'ampoule, c'est en marchant longtemps."
Nétiquette du forum
Savoir faire une recherche
Apprendre la programmation
Nétiquette du forum
Savoir faire une recherche
Apprendre la programmation
- boubouk50
- ModoGenereux
- Messages : 6216
- Inscription : 28 Avr 2014 11:57
- Localisation : Saint-Didier-en-Bresse (71)
Re: Demande rapide sur Raycast
Essaie voir cela, remplace:
par
pareil pour l'autre condition:
-EDIT- le tag peut être lu directement sur le collider, mais il doit aussi l'être depuis le gameObject donc je ne pense pas que ce soit cela en fait
Je pencherai plutôt sur le fait que le raycast ne doit pas se faire sur transform.forward. Sur l'image l'axe du Bus est le rouge, X. Ce serait donc le transform.right pour l'arrière et le -transform.right pour le devant
Code : Tout sélectionner
if(DetectionArriere30m.collider.gameObject.tag=="RETROVISEUR" )
Code : Tout sélectionner
if(DetectionArriere30m.collider.tag=="RETROVISEUR" )
Code : Tout sélectionner
if(DetectionAvant10m.collider.gameObject.tag=="RETROVISEUR" )
Je pencherai plutôt sur le fait que le raycast ne doit pas se faire sur transform.forward. Sur l'image l'axe du Bus est le rouge, X. Ce serait donc le transform.right pour l'arrière et le -transform.right pour le devant
"Ce n'est pas en améliorant la bougie, que l'on a inventé l'ampoule, c'est en marchant longtemps."
Nétiquette du forum
Savoir faire une recherche
Apprendre la programmation
Nétiquette du forum
Savoir faire une recherche
Apprendre la programmation