# Begreppslista Unity ### Byggstenar i Unity **GameObject** - ett objekt i ett Unity spel **Komponent** - en funktion som tillhör ett *GameObject*. Finns färdiga komponenter samt egen-kodade komponenter i form av *Skript* **Skript** - en fil med C# kod som utgör en komponent. ### Komponenter **Rigidbody** - en komponent som hanterar fysik-funktioner. Gör att objektet beter sig som ett fysiskt objekt utifrån krafter. **Transform** - en komponent som alla GameObjects har. Representerar objektets *position*, *rotation*, och *storlek (scale)*. ### C# skript `Vector3` - en vektor i 3 dimensioner. Består av tre siffror: *x,y,z*. `Vector2` - en vektor i 2 dimensioner. Består av två siffror: *x,y* `AddForce(Vector3 force)` - metod som applicerar en kraft i given riktning. `Start()` - metod som anropas när ett objekt skapas i en scen (ofta när spelet börjar). `Update()` - metod som körs varje bilduppdatering `FixedUpdate()` - metod som körs varje fysikuppdatering (50 gånger per sekund) `OnCollisionEnter(Collision collision)` - metod som anropas när objektet kolliderar med något, givet att något av objekten har en rigidbody. `Time.deltaTime` - variabel som representerar tiden sen senaste uppdatering i sekunder `GetComponent<Component>()` - metod som returnerar en komponent på ett objekt. Typen av komponent anges inom <>. Exempel: `GetComponent<Rigidbody>()` `Destroy(GameObject objekt)` - metod som tar bort objektet som anges inom paranteserna. `gameObject` - variabel som representerar GameObject:et som skriptet sitter på ### Exempel Få tag på rigidbodyn på samma objekt: ``` Rigidbody myRigidbody = GetComponent<Rigidbody>(); ``` Få tag på Enemy-komponent på ett annat objekt ``` GameObject otherObject; Enemy enemy = otherObject.GetComponent<Enemy>(); ```