Creare Videogiochi - Game Developer

Versione completa: Problema con controllo per vedere se il tocco è nel collider
Al momento stai visualizzando i contenuti in una versione ridotta. Visualizza la versione completa e formattata.
Ciao a tutti, ho un problema con uno script per controllare se il touch è all'interno del collider. Credo il problema sia lo script e non il collider perché ho provato più volte a modificarlo ma non ho risolto nulla.

Script (in Unityscript):

var ScrittaStart : GameObject;
var ScrittaSettings : GameObject;
var AudioSetting : GameObject;
var TitleSetting : GameObject;
var ButtonExit : GameObject;
var SfondoSetting : GameObject;
var punto : Vector3;
var PosPunto : Vector2;

function Update()
{
if(Input.touchCount >0)
{
punto = Camera.main.ScreenToWorldPoint(Input.GetTouch(0).position);
PosPunto = new Vector2(punto.x, punto.y);
if(gameObject.GetComponent.<Collider2D>().bounds.Contains(PosPunto))
{
ScrittaStart.active = false;
AudioSetting.active = true;
TitleSetting.active = true;
ButtonExit.active = true;
SfondoSetting.active = true;
ScrittaSettings.active = false;
}
}
}
Ciao, per un mio progetto ho gestito in questo modo il sistema touch:

Codice PHP:
private var hit RaycastHit
private var 
ray Ray;

function 
Update()
{

if (
Input.touchCount 1)
{
     
//creo un raggio che parte dalla camera a va fino al punto dove abbiamo toccato
     
ray Camera.main.ScreenPointToRay(Input.touches[0].position);
     
//disegno il raggio in modo da poterlo vedere nell'editor
     
Debug.DrawLine(ray.origin,ray.direction 10);
     
//se tocco qualcosa 
     
if(Physics.Raycast(ray.originray.direction 10,hit))
     {
          
//hit è l'oggetto toccato. Qui posso mettere cosa deve accadere al tocco
     
}
}


Quello di zettamax è un ottimo sistema, usa quello e metti che se hitti il collider fa un debug in modo da capire se stai toccando il collider
Ok, grazie proverò al più presto
Ok, sono riuscito a risolvere, grazie