🎼
Unity snabbreferens
  • Unity snabbreferens
  • Installation & setup
  • Kompilera och distribuera
  • Unity och git
  • GrundlĂ€ggande koncept
    • Begrepp
    • Ett Unityprojekts uppbyggnad
    • Prefabs och instanser
    • Komponenter
    • Scener
    • MonoBehavior
    • Lager och taggar
    • Knappar och axlar
  • Grundfunktioner
    • Debug och gizmos
    • Datatyper och synlighet
    • Input
      • Action-based Input System
    • Flytta och rotera
    • Kollisioner
    • Skapa och förstör
    • Hitta spelobjekt
    • BestĂ€ndig data
    • Slump
    • Fysik (2D och 3D)
      • Raycasting*
    • UI och Canvas*
    • Importera grafik*
      • Sprite editor*
    • Unity Events
    • Invoke, Couroutines
    • Animationer*
      • AnimationClip*
      • Animator Controller*
  • Andra funktioner
    • Tilemaps*
    • Asset Store
      • AnvĂ€ndbara Assets
    • Package manager
    • Meddelanden
    • CharacterController
    • Scriptable objects*
  • TillĂ€ggspaket
    • AI-Navmesh*
    • Mirror (nĂ€tverk)
    • XR Toolkit
      • Controllers
      • Interaktion*
      • Device Simulator
      • Teleportation
      • Meta Quest 2/3
      • 3D-modeller*
    • MRTK3 (HoloLens 2)
      • Grundkoncept*
      • Simulering
      • Interaktion*
      • Röststyrning
      • UI/UX och Canvas*
      • Spatial awareness*
      • Deployment*
    • MRTK2 (Hololens 1)
    • ProBuilder
  • Tekniker
    • PĂ„verka andra objekt*
    • RutnĂ€t*
Powered by GitBook
On this page
  • HĂ€ndelse-metoder
  • Start()
  • Update()
  • FixedUpdate()
  • OnBecameVisible()
  • OnBecameInvisible()
  • Livscykeln

Was this helpful?

  1. GrundlÀggande koncept

MonoBehavior

PreviousScenerNextLager och taggar

Last updated 1 year ago

Was this helpful?

MonoBehavior Àr den basklass som alla komponenter bygger pÄ. Den innehÄller ett antal variabler som ger tillgÄng till Unitys olika funktioner, och framför allt till spelobjektet som komponenten Àr fÀst vid. NÄgra exempel:

  • gameObject – direkt tillgĂ„ng till spelobjektet

  • transform – direkt tillgĂ„ng till Transform-komponenten

  • tag – spelobjektets tagg

  • name – spelobjektets namn

  • enabled – huruvida komponenten Ă€r aktiv eller ej

HĂ€ndelse-metoder

Det finns ett antal metoder som man kan lĂ€gga till i klasser som Ă€rver frĂ„n MonoBehavior, och som – om scriptet lagts till som komponent pĂ„ ett spelobjekt – körs vid specifika tillfĂ€llen. Nedan Ă€r nĂ„gra exempel, .

Start()

Körs nÀr objektet skapas.

void Start()
{
  Debug.Log("I am alive!");
}

Update()

Körs en gÄng varje bildruta. HÀr skrivs ofta en hel del av logiken för spelobjektet.

void Update()
{
  Debug.Log("Ny bildruta, yay!");
}

FixedUpdate()

Körs en gÄng varje gÄng fysikdelen av Unity kör en av sina loopar. Normalt sker det 30 gÄnger per sekund. HÀr skrivs ocksÄ en del fysik, framför allt kanske sÄdan som berör fysikmotorn eller som inte behöver köras riktigt lika ofta som Update.

void Update()
{
  Debug.Log("Ny bildruta, yay!");
}

OnBecameVisible()

Anropas nĂ€r en renderer pĂ„ spelobjektet blir synlig – nĂ€r nĂ„gon del av dess bounds hamnar innanför skĂ€rmen.

private void OnBecameVisible()
{
  print("I'm visible!");
}

OnBecameInvisible()

Anropas nĂ€r en renderer pĂ„ spelobjektet blir osynlig – nĂ€r ingen del av dess bounds hamnar innanför skĂ€rmen.

private void OnBecameInvisible()
{
  Destroy(this.GameObject)
}

Livscykeln

Man behöver inte kunna det schemat utantill, mend et kan vara bra att veta att det finns, och att det finns en viss ordning saker och ting körs i.

Metoder som Update och Àven t.ex. kollisionsmetoder som OnEnterCollision körs i en viss ordning. Kolla gÀrna pÄ schemat . DÀr kan man till exempel se att innan Start körs en som heter Awake och en som heter OnEnable, och att det efter Update sker en massa saker och sedan LateUpdate.

men en komplett lista finns hÀr
hÀr