Creare Videogiochi - Game Developer

Versione completa: Movimento oggetto 2D nel canvas
Al momento stai visualizzando i contenuti in una versione ridotta. Visualizza la versione completa e formattata.
Ciao a tutti, ho un problema, devo muovere un'immagine 2D appartenente al canvas a seconda della posizione del mouse.
Codice:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class Movement : MonoBehaviour {

   public float speed = 100;
   public bool move = false;
   private Vector3 target;
   void Update()
   {
       if (Input.GetMouseButtonDown(0))
       {
           Debug.Log("Clicking");
           target = Camera.main.ScreenToWorldPoint(Input.mousePosition);
           target.z = transform.position.z;
           if (!move)
               move = true;
       }

       if (move)
       {
           transform.position = Vector3.MoveTowards(transform.position, target, speed * Time.deltaTime);
           Debug.Log("Moving");
       }
   }
}

Questo è lo script, il problema però è che la posizione (target) è rilevata in base alla camera, infinitamente più piccola del canvas nell'ambiente 2D, quindi di conseguenza quando vado a cliaccare l'immagine si sposta sulla camera, ma con il dovuto spostamento, seppur piccolo perché la camera è piccola.
Avrei quindi bisogno di sapere come aggiustare lo script o in eventuale ingrandire la camera della stessa dimensione dle canvas nell'ambiente 2D.
Grazie a tutti in anticipo. Big Grin
Ho risolto banalmente ingrandendo la camera e posizionandola perfettamente sui limiti del canvas con l'opzione size nell'inspector della camera Smile