Ekran Sarsıntısı
Coddy'nin Godot Journey'sinin Oyun Hissi bölümünün bir parçası. Ders 11 / 23.
Ekran sarsıntısı, bir yere sertçe basma veya patlama gibi önemli bir anı vurgular. Bu seviyede E, kameranın start_shake() işlevini çağırır; bu da shake değerini 12 olarak ayarlar. Henüz hiçbir şey hareket etmez.
Bir Camera2D düğümünün offset özelliği vardır; bu özellik, kamera düğümünü hareket ettirmeden görünümü kaydıran bir Vector2 değeridir. Her karede yeni bir rastgele ofset kullanmak, görünümün sarsılmasını sağlar.
offset = Vector2(randf_range(-shake, shake), randf_range(-shake, shake))Sarsıntı durmalıdır. Her karede move_toward ile shake değerini 0'a doğru azalt; böylece sıçramalar küçülür.
shake = move_toward(shake, 0.0, 30.0 * delta)shake 0'a ulaştığında, her iki rastgele sayı da 0 olur ve offset yeniden Vector2(0, 0) değerine döner.
Görev
OrtaRobot yere sertçe bastığında ekranı salla.
_processiçinde,move_towardileshakedeğerini30.0 * deltakadar 0'a yaklaştır.offsetdeğerini, x ve y değerleri-shakeileshakearasında rastgele olan birVector2olarak ayarla.
“Oyna”'ya bas ve yere sertçe basmak için E'ye bas: görünüm sallanır, sonra durulur. Ardından “Kontrol et”.
Kendin dene
extends Camera2D
var shake = 0.0
func _ready():
limit_left = 0
limit_top = 0
limit_right = 1600
limit_bottom = 360
func start_shake():
shake = 12.0
func _process(delta):
pass
Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Oyun Hissi bölümündeki tüm dersler
Kendi başına pratik yap: Godot playground