Sommare vettori
Fa parte della sezione Fondamenti di scripting in Unity del percorso Unity di Coddy. Lezione 17 di 67.
Un Vector3 può essere memorizzato in una variabile e due di essi si sommano con +: x si somma a x, y a y e z a z. È così che due spinte si combinano in un unico movimento. Questo pallone da spiaggia rotola in avanti a 2 unità al secondo mentre il vento lo spinge di 1 unità al secondo verso destra:
Vector3 roll = new Vector3(0, 0, 2);
Vector3 wind = new Vector3(1, 0, 0);
void Update()
{
Vector3 move = roll + wind; // (1, 0, 2)
transform.position += move * Time.deltaTime;
}Moltiplicare un vettore per un numero moltiplica ciascuna delle sue componenti: wind * 3 è (3, 0, 0), una tempesta, e move * Time.deltaTime trasforma un movimento al secondo nel movimento per questo fotogramma. Anche la sottrazione funziona componente per componente e a - b è il passo che porta dal punto b al punto a. Non esiste * tra due vettori: roll * wind non viene compilato.
Sfida
FacileLa current di un fiume trasporta sempre la barca. Mentre tieni premuta la freccia verso l'alto, anche il motor spinge la barca, oltre alla corrente. Entrambi sono movimenti in unità al secondo, impostati nell'Inspector: la corrente è (1, 0, 0) e il motore (0, 0, 3).
Premi Play e attraversa il fiume con la freccia verso l'alto, poi premi Check.
Provalo tu
using UnityEngine;
public class Boat : MonoBehaviour
{
public Vector3 current = new Vector3(0, 0, 0);
public Vector3 motor = new Vector3(0, 0, 0);
void Update()
{
// La corrente trasporta sempre la barca.
// Finché si tiene premuta la freccia su, anche il motore spinge.
}
}
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