Probabilmente il primo scoglio nella sintassi di scripting di Unity3D riguarda l'accesso alle diverse componenti: per me, che provengo dalla programmazione orientata agli oggetti (OO), si tratta di fare un piccolo sforzo concettuale nel comprendere che, ad esempio, il riferimento a this (l'oggetto corrente) è sottinteso, nel senso che viene realizzato:
- mediante gli alias transform, renderer, collider, animation, ... sul "this" (se scritti in minuscolo sono variabili o "oggetti", se in maiuscono invece sono le corrispondenti classi);
- mediante drag'n drop per riferimenti esterni.
Alias significa, in altri termini, che scrivere transform.Translate(1, 3, 2); equivale a GetComponent(Transform).Translate(1, 3, 2); inizialmente, inoltre, per ogni GameObject gli alias sono settati a null di default.
Le varie parti di un determinato oggetto sono riferite mediante dot notation (ad esempio translate.qualcosa="ciao")
