Vedere le immagini di seguito.Verifica se un punto di tocco si trova all'interno del collisore in Unity
Nella prima immagine si può vedere che c'è scatola collider. La seconda immagine è quando si esegue il codice sul dispositivo Android
Qui è il codice che è attaccato a giocare il gioco (il suo un testo 3D)
using UnityEngine;
using System.Collections;
public class PlayButton : MonoBehaviour {
public string levelToLoad;
public AudioClip soundhover ;
public AudioClip beep;
public bool QuitButton;
public Transform mButton;
BoxCollider boxCollider;
void Start() {
boxCollider = mButton.collider as BoxCollider;
}
void Update() {
foreach (Touch touch in Input.touches) {
if (touch.phase == TouchPhase.Began) {
if (boxCollider.bounds.Contains (touch.position)) {
Application.LoadLevel (levelToLoad);
}
}
}
}
}
voglio vedere se punto di contatto è all'interno del collisore o no. Voglio farlo perché adesso se clicco qualsiasi punto della scena Application.LoadLevel (levelToLoad); è chiamato.
Voglio essere chiamato se clicco solo sul testo PLAY GAME. Qualcuno mi può aiutare con questo pezzo di codice o può darmi un'altra soluzione al mio problema ??
Codice recente dal seguente logica di heisenbug
void Update() {
foreach(Touch touch in Input.touches) {
if(touch.phase == TouchPhase.Began) {
Ray ray = camera.ScreenPointToRay(new Vector3(touch.position.x, touch.position.y, 0));
RaycastHit hit;
if (Physics.Raycast(ray, out hit, Mathf.Infinity, 10)) {
Application.LoadLevel(levelToLoad);
}
}
}
}
Quello che ho fatto è che, Selezionato Testo 3d e nell'ispettore selezionato livello assegnato ad esso.Il numero del layer era 8. Successivamente ho passato il parametro layerOfYourGameObject come 8 e ho eseguito il codice, ma la collisione non si verificava ancora. Ho allegato il codice nella domanda sopra. –
Per favore correggimi se ho torto su come aggiungere un layer al testo 3D. 1) Seleziona testo 3D. 2) In Inpector è passato a AddLayer e denominato Unity Layer 10 a PlayGameLayer. 3) In ispettore Tag = Senza tag e Layer = PlayGameLayer. 4) Lo script con il codice sopra è allegato a PlayGame 3d Text. È la strada giusta? Se è così allora cosa potrebbe esserci di sbagliato? –
@Jawad Amjad: hai attaccato il riquadro di selezione allo stesso GameObject che ha allegato il componente Testo? – Heisenbug