I Godot kan du skapa egna funktioner, men det finns också inbyggda metoder som spelmotorn automatiskt anropar i olika skeden. Dessa metoder kallas ofta callback-metoder.
De används för att:
När en nod skapas och körs i spelet följer den ett antal steg:
_enter_tree()
Körs när noden läggs till i scenens träd.
_ready()
Körs när noden och dess barn är laddade och redo. Detta är en av de mest använda metoderna.
_process(delta)
Körs varje bildruta. Används för allmän logik.
_physics_process(delta)
Körs varje bildruta med konstant frekvens, synkad till fysiksystemet (t.ex. 60 Hz). Används för rörelser och kollisionshantering.
_input(event)
Körs när en inmatning (tangent, mus, joystick) sker.
_unhandled_input(event)
Som ovan, men bara om ingen annan nod redan fångat eventet.
_exit_tree()
Körs när noden tas bort från trädet (t.ex. när scenen byts).
extends CharacterBody2D
func _ready():
print("Spelaren är redo!")
func _process(delta):
rotation += 1 * delta
func _input(event):
if event.is_action_pressed("ui_accept"):
print("Enter trycktes ner")
| Funktion | När den används |
|---|---|
_process(delta) |
När du vill uppdatera grafik, UI, animationer |
_physics_process(delta) |
När du jobbar med fysik eller kollisioner |
Exempel på att reagera på tangenttryck:
func _input(event):
if event.is_action_pressed("ui_up"):
print("Uppåt trycktes")
Du kan också lägga till egna inmatningar i Project → Project Settings → Input Map.