Menu
CoddyTech

Direzioni

Fa parte della sezione Fondamenti di scripting in Unity del percorso Unity di Coddy. Lezione 18 di 67.

Unity ha dei nomi per le sei direzioni, ciascuna lunga un'unità:

  • Vector3.right (1, 0, 0) e Vector3.left (-1, 0, 0)
  • Vector3.up (0, 1, 0) e Vector3.down (0, -1, 0)
  • Vector3.forward (0, 0, 1) e Vector3.back (0, 0, -1)

Esistono anche Vector3.zero (0, 0, 0) e Vector3.one (1, 1, 1). Poiché ogni direzione è lunga un'unità, moltiplicare una direzione per una velocità equivale a uno spostamento esattamente pari a quella velocità. Questa lumaca si sposta lentamente allontanandosi dalla telecamera a 0.5 unità al secondo:

public float speed = 0.5f;

void Update()
{
    transform.position += Vector3.forward * speed * Time.deltaTime;
}

È lo stesso spostamento di new Vector3(0, 0, speed * Time.deltaTime), ma la direzione è più facile da leggere e riduce il rischio di inserirla sull'asse sbagliato. Il segno meno inverte una direzione: -Vector3.forward equivale a Vector3.back. Queste direzioni appartengono al mondo, non all'oggetto: Vector3.forward è l'asse z del mondo anche quando la lumaca è girata dall'altra parte. Nella prossima lezione sposterai gli oggetti nella direzione verso cui sono rivolti.

challenge icon

Sfida

Facile

Muovi il gancio della gru con le frecce a speed unità al secondo: le frecce destra e sinistra lo spostano a destra e a sinistra lungo x, la freccia su lo solleva e la freccia giù lo abbassa. Usa le direzioni denominate di Unity. Se non tieni premuto alcun tasto, resta dov'è.

Premi Play e guida il gancio, poi premi Check.

Provalo tu

using UnityEngine;

public class Hook : MonoBehaviour
{
    public float speed = 2f;

    void Update()
    {
        // Frecce destra/sinistra: scorrono lungo x. Frecce su/giù: alzano e abbassano.
    }
}
quiz iconMettiti alla prova

Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.

Tutte le lezioni di Fondamenti di scripting in Unity