Datatyper och synlighet

Synlighet

Synlighet i Unity fungerar som vanligt - privata variabler och metoder kan bara kommas Ät av respektive script, publika variabler och metoder kan kommas Ät Àven utifrÄn.

Om ett script som lagts till ett spelobjekt har publika variabler, sÄ kommer dessa variabler att synas i inspectorn i Unity. Det betyder alltsÄ att deras vÀrden kan redigeras direkt i Unity. OBS: Det betyder ocksÄ att vÀrden som anges via inspectorn fÄr högre prioritet Àn vÀrden som anges dÀr variablerna deklareras i koden.

Med andra ord; om man skriver:

public int experience = 4;

Och sedan Àndrar vÀrdet till 9 i inspectorn sÄ kommer det inte att spela nÄgon roll vilket vÀrde man senare Àndrar fyran till i koden.

SerializeField

SerializeField anvÀnds för att göra sÄ att en privat variabel visas i inspectorn. Med andra ord ger man Unity tillgÄng till variabeln, men andra scripts kan inte komma Ät den.

[SerializeField]
int experience = 4;

Huruvida man anvÀnder SerializeField eller public Àr lite av en smaksak, men den som vill vara extra noggrann med sin inkapsling anvÀnder sÄ fÄ publika variabler som möjligt och dÄ kan SerializeField vara anvÀndbart som alternativ.

Datatyper

float

Decimaltal. IngÄr egentligen i grund-C#, men stÄr med hÀr eftersom det Àr den decimaltals-datatyp som anvÀnds av Unity.

float speed = 4.5f;

Vector3

Tredimensionella vektorer. En vektor innehÄller vÀrden för x, y och z (lagrade som floats).

// Skapa en Vector3 som har x-vÀrde 2.3, y-vÀrde 4 och z-vÀrde 0.
Vector3 movement = new Vector3(2.3f, 4f, 0f);

Vector3-klassen innehÄller ocksÄ bl.a ett antal fÀrdiga vektorer och metoder för att manipulera vektorer.

// Skapa en Vector3 som har x-vÀrde 1 (frÄn Vector3.right), y-vÀrde 1 
// (frÄn Vector3.up) och z-vÀrde 0.
Vector3 diagonal = Vector3.right + Vector3.up

NÀr man utför vanliga matematiska operationer som innefattar en Vector3 och ett tal sÄ pÄverkar talet samtliga vÀrden.

// Skapa en Vector3 som har x-vÀrde 4, y-vÀrde 4 och z-vÀrde 0.
Vector3 veryDiagnonal = diagonal * 4

Vector2

Fungerar som Vector3 men saknar z-vÀrde.

// Skapa en Vector2 som har x-vÀrde 2.3 och y-vÀrde 4.
Vector2 movement = new Vector2(2.3f, 4f);

Quaternion

Beskriver rotationer. Kluriga att anvÀnda; man skapar dem nÀstan aldrig sjÀlv utan anvÀnder olika metoder som genererar dem. Den vanligaste anvÀndningen Àr att man bara hÀmtar den fÀrdiga "noll-roterade" Quaternion.identity och anvÀnder den i t.ex. Instantiate().

GameObject

Beskriver spelobjekt. InnehÄller bland annat referens till den obligatoriska transform-komponenten, metoden för att förstöra objektet, samt metoden för att hÀmta referenser till objektets olika komponenter.

Last updated