Menu
CoddyTech

Posiziona il cubo

Fa parte della sezione Fondamenti di scripting in Unity del percorso Unity di Coddy. Lezione 9 di 85.

Ogni GameObject ha un Transform: posizione, rotazione e scala. Uno script accede al Transform del proprio oggetto tramite transform, e transform.position indica dove si trova il centro dell'oggetto, come Vector3: tre numeri per x (destra), y (su) e z (avanti, lontano dalla telecamera). Un'unità equivale a un metro.

Per posizionare un oggetto da qualche parte, assegnagli una nuova posizione in Start(). Questa lampada è alta 2 unità e dovrebbe stare su un tavolo la cui superficie si trova a y = 2, centrata in x = -2, z = 4. Il centro della lampada si trova a metà della sua altezza sopra la superficie del tavolo, quindi il suo valore y è 2 + 1 = 3:

void Start()
{
    transform.position = new Vector3(-2, 3, 4);
}

Mentre il gioco è in esecuzione, seleziona la lampada nella Hierarchy: Transform nell'Inspector mostra gli stessi tre numeri della sua Position.

challenge icon

Sfida

Facile

Posiziona il cubo blu al centro della piattaforma arancione.

  1. In Start(), imposta transform.position su new Vector3(x, y, z).
  2. x e z sono il centro della piattaforma: 3 e 2.
  3. y è la parte superiore della piattaforma (1.5) più metà dell’altezza del cubo: 1.5f + 0.5f.

Premi «Gioca»: il cubo si appoggia sulla piattaforma. Poi premi «Verifica».

Provalo tu

using UnityEngine;

public class PlaceCube : MonoBehaviour
{
    void Start()
    {
        // x, y, z: modifica questi tre numeri
        transform.position = new Vector3(0f, 1f, 0f);
    }
}

Tutte le lezioni di Fondamenti di scripting in Unity

Esercitati da solo: Playground Unity