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) eVector3.left(-1, 0, 0)Vector3.up(0, 1, 0) eVector3.down(0, -1, 0)Vector3.forward(0, 0, 1) eVector3.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.
Sfida
FacileMuovi 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.
}
}
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
1Il tuo primo script
Ciao, UnityPosiziona il cuboMuovi a ogni frameRuota ogni secondoGuida con i tastiRiepilogo: guida il cubo4Vettori
Sommare vettoriDirezioniSpazio locale e spazio globaleVelocità diagonaleDistanza tra gli oggettiVector3 è una structRiepilogo: pilota di droni7Progetto: Acchiappa la stella
L'acchiappatoreUna stella cadente10Il ciclo di vita degli script
Awake e StartUpdate e LateUpdateOnEnable e OnDisableL’ordine del ciclo di vitaRipasso: logger del ciclo di vita2L'Inspector
Campi dell'InspectorSerializeFieldNumeri decimali e MathfAttributi dell'InspectorRiepilogo: Ascensore5Trasformazioni e gerarchia
Genitori e figliScalaGuarda gli oggettiMuoversi verso un puntoRiepilogo: Luna in orbita6Oggetti di gioco e componenti
Riferimenti nell’InspectorOttenere un componenteComponenti mancantiAggiungere un componenteRequireComponentMostrare e nascondereRipasso: interruttore della luce