[RESOLU] Google VR et Raycast

Toutes les questions sur le développement Mobile, y compris la partie script.
Avatar de l’utilisateur
Paullux
Messages : 68
Inscription : 12 Nov 2015 17:11
Contact :

[RESOLU] Google VR et Raycast

Message par Paullux » 08 Nov 2017 23:09

Bonjour,

Je fais un petit jeu, en VR grâce à Google VR (la dernière version) et j'ai un problème, je n'arrive pas à détecter les raycast hit.

Code : Tout sélectionner

Physics.Raycast(Camera.main.ScreenPointToRay(Input.mousePosition), out hit, Mathf.Infinity);
Marche en mode play sur le pc mais pas sur mon téléphone.

Après GvrPointerPhysicsRaycaster ne semble pas marcher.

et les Events Trigger PointerEnter ou PointerExit, ne semble pas marcher...

J'ai essayé de reproduire la scène de démo de Google VR.

Dans ma scène j'ai un GvrEventSystem, un GVREditorEmulator, un GvrControllerMain et une Player avec en dessous un Main Camera et un GvrControllerPointer.

Que faut il faire ? Pourquoi ça ne marche pas ? que manque t 'il dans ma scène ?
J'ai créé un ensemble de jeux :

Un HUB : https://bit.ly/2J6EZTO
Un jeu avec contrôle tactile à l'écran : https://bit.ly/2J3IkTw
Un jeu en VR : https://bit.ly/2h5jdzk
Un jeu en AR : https://bit.ly/2LgMvIo

Il s'agit de FPS pour Android.

Avatar de l’utilisateur
simonj
Messages : 293
Inscription : 29 Nov 2015 20:47
Localisation : Lyon

Re: Google VR et Raycast

Message par simonj » 09 Nov 2017 01:35

Salut,
Paullux a écrit :
08 Nov 2017 23:09

Code : Tout sélectionner

Physics.Raycast(Camera.main.ScreenPointToRay(Input.mousePosition), out hit, Mathf.Infinity);
Marche en mode play sur le pc mais pas sur mon téléphone.

Que faut il faire ? Pourquoi ça ne marche pas ? que manque t 'il dans ma scène ?
De manière assez logique "Input.mousePosition" ne fonctionne pas sur mobile vu qu'il n'y a pas de mouse. Il faut utiliser Input.touches afin de détecter un input avec le doigt (Attention, c'est une liste car tu peux avoir plusieurs input en fonction du nombre de doigt mais tu peux aussi en avoir 0 :!: ). Tu trouveras une documentation assez précise sur les Inputs mobile en haut de la page dans la documentation de la classe Input.

Avatar de l’utilisateur
Paullux
Messages : 68
Inscription : 12 Nov 2015 17:11
Contact :

Re: Google VR et Raycast

Message par Paullux » 09 Nov 2017 14:02

Bonjour,

Le problème c'est que je ne peux pas toucher l'écran, c'est une application VR avec mon cardboard, et j'utilise Google VR pour obtenir la vue stéréoscopique.

Normalement, avec Google VR il est posssible d'avoir un RayCast Hit mais je ne sans pas comment faire, ce qui marche sur mon menu d'accueil, ne marche pas dans mes phase de jeux.

J'ai besoin pour mon jeu d'obtenir les (Hit.)points pour détecter si vise un ennemi et où faire apparaître mes particules de sang.

Pour montrer, j'ai l'ancienne version disponible sur le PlayStore : https://play.google.com/store/apps/deta ... .cardboard .

Avant j'utilisé le SDK Carboard de 2014, où un simple Physics.Raycast avec head.Gaze où head était un Game Object dans le prefab de la Camera de Google Cardboard. J'ai décidé de mettre à jour le SDK en prenant le dernier SDK Google VR.

Les graphismes sont devenus plus beaux, mais je n'arrive plus à obtenir les points de visés sur mes ennemis.

Je pense dans que j'ai du oublier quelques choses (par exemple un script de Google) dans mes scènes de jeux mais je ne sais pas quoi.
J'ai créé un ensemble de jeux :

Un HUB : https://bit.ly/2J6EZTO
Un jeu avec contrôle tactile à l'écran : https://bit.ly/2J3IkTw
Un jeu en VR : https://bit.ly/2h5jdzk
Un jeu en AR : https://bit.ly/2LgMvIo

Il s'agit de FPS pour Android.

Avatar de l’utilisateur
Paullux
Messages : 68
Inscription : 12 Nov 2015 17:11
Contact :

Re: Google VR et Raycast (Résolu)

Message par Paullux » 11 Nov 2017 21:44

J'ai trouvé une solution :

En fait c'est que dans mon jeu, j'avais ajouté un canvas, une image qui interceptait le RayCast.

J'ai décoché dans le script "Image" l'option "RayCast Target" de mon canvas.

et avec Google VR SDK que j'utilise, il n'y a pas besoin de faire un RayCast, il suffit de faire :

Code : Tout sélectionner

        Camera cam = Camera.main;
        GameObject interactedObject;

        RaycastResult myRayCast = GvrPointerInputModule.CurrentRaycastResult;
        myHitPoint = myRayCast.worldPosition;
        interactedObject = myRayCast.gameObject;
J'ai créé un ensemble de jeux :

Un HUB : https://bit.ly/2J6EZTO
Un jeu avec contrôle tactile à l'écran : https://bit.ly/2J3IkTw
Un jeu en VR : https://bit.ly/2h5jdzk
Un jeu en AR : https://bit.ly/2LgMvIo

Il s'agit de FPS pour Android.

Avatar de l’utilisateur
boubouk50
ModoGenereux
ModoGenereux
Messages : 6216
Inscription : 28 Avr 2014 11:57
Localisation : Saint-Didier-en-Bresse (71)

Re: Google VR et Raycast

Message par boubouk50 » 13 Nov 2017 11:22

Salut Paullux,
Lorsque ton problème, il faut ajouter [RESOLU] en début du premier post car c’est le premier titre qui est affiché dans la section.
"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

Répondre

Revenir vers « Développement plateformes mobile Iphone et Android »