Blocchi in caduta
Fa parte della sezione Fondamenti di scripting in Unity del percorso Unity di Coddy. Lezione 61 di 67.
Sfida
MedioOra i blocchi cadono dal cielo. Mantieni il movimento dell’ultima lezione e aggiungi a Runner:
- Tre campi compilati dall’Inspector:
blockPrefab(unGameObject: la scena gli assegna il prefab Block),spawnEvery(1) efallSpeed(5). - Una
List<GameObject>chiamatablocksche tiene traccia di ogni blocco generato. - Ogni
spawnEverysecondi, genera un Block in una posizione x casuale tra-laneEdgeelaneEdge, con y = 10 e z = 0, e aggiungilo ablocks. - A ogni fotogramma, sposta verso il basso ogni blocco in
blocksalla velocità difallSpeedunità al secondo.
I blocchi non possono ancora fare male al corridore. Premi Play e guardali cadere, poi Check.
Provalo tu
using UnityEngine;
public class Runner : MonoBehaviour
{
[SerializeField] private float speed = 6f;
[SerializeField] private float laneEdge = 4f;
void Update()
{
Vector3 p = transform.position;
p.x += Input.GetAxisRaw("Horizontal") * speed * Time.deltaTime;
p.x = Mathf.Clamp(p.x, -laneEdge, laneEdge);
transform.position = p;
}
}
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