Nodul Camera2D determină ce porțiune din lumea 2D este proiectată pe ecranul jucătorului. Godot 4 include funcționalități native pentru urmărire atenuată (smoothing), margini de derulare (drag margins) și delimitarea absolută a hărții prin proprietățile de limite.
Configurarea camerei și limitarea la marginile nivelului
extends Camera2D
func _ready() -> void:
# Activăm urmărirea fluidă a nodului părinte:
position_smoothing_enabled = true
position_smoothing_speed = 6.0 # viteză de interpolare
# Zoom de 2x (imagine mai apropiată / stil pixel-art):
zoom = Vector2(2.0, 2.0)
# Setăm limitele hărții în pixeli (camera nu va ieși în afara acestor coordonate):
limit_left = 0
limit_top = 0
limit_right = 3200
limit_bottom = 1800
Implementarea unui efect de cutremur (Camera Shake)
var forta_shake: float = 0.0
func declanseaza_shake(intensitate: float = 8.0) -> void:
forta_shake = intensitate
func _process(delta: float) -> void:
if forta_shake > 0.0:
offset = Vector2(
randf_range(-forta_shake, forta_shake),
randf_range(-forta_shake, forta_shake)
)
forta_shake = lerp(forta_shake, 0.0, 10.0 * delta)
else:
offset = Vector2.ZERO
Întrebări & Exemple de Cod:
Controlul Camerei în Godot 4: Nodul Camera2D, Limits și SmoothingAi o nelămurire despre utilizarea comenzii
Controlul Camerei în Godot 4: Nodul Camera2D, Limits și Smoothingsau ai descoperit un truc / fragment de cod util? Distribuie-l cu ceilalți programatori!Fii primul care pune o întrebare sau distribuie un fragment de cod / prompt!
Nu au fost adăugate încă întrebări sau exemple de cod pentru această pagină. Dacă ai întâlnit o problemă sau ai un snippet util, adaugă-l mai jos pentru a-i ajuta pe ceilalți.