Vérifier si un point de Contact qui est à l'intérieur de la boîte de collider dans l'Unité

Veuillez voir les images ci-dessous.

Vérifier si un point de Contact qui est à l'intérieur de la boîte de collider dans l'Unité

Vérifier si un point de Contact qui est à l'intérieur de la boîte de collider dans l'Unité

Dans la première image, vous pouvez voir qu'il y a une boîte collider.
La deuxième image est quand je lance le code sur un appareil Android

Voici le code qui est attaché à Jouer le Jeu (son Texte 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);
                }
            }                
        }
    }
}

Je veux voir si le point de contact est à l'intérieur de la collider ou pas. Je veux le faire parce que pour l'instant, si je clique n'importe où sur la scène
Application.LoadLevel(levelToLoad); il est appelé.

Je veux qu'il soit appelé que si je clique sur le JEU JEU de texte seulement. Quelqu'un peut-il m'aider avec ce morceau de code ou peut me donner une autre solution à mon problème??


Récentes Code en suivant Heisenbug Logique du

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);             
        }           
    }   
}
}

OriginalL'auteur Jawad Amjad | 2013-05-08