Menu
CoddyTech

רעידות מסך

חלק מהיחידה התחושה של המשחק במסלול ה-Godot של Coddy. שיעור 11 מתוך 23.

רעידת מסך מסמנת רגע גדול, כמו דריכה או פיצוץ. בשלב הזה, E קורא ל־start_shake() של המצלמה, שמגדיר את shake ל־12. עדיין שום דבר לא זז.

ל־Camera2D יש offset, שהוא Vector2 שמסיט את התצוגה בלי להזיז את צומת המצלמה. היסט אקראי חדש בכל פריים גורם לתצוגה לרעוד.

offset = Vector2(randf_range(-shake, shake), randf_range(-shake, shake))

הרעידה חייבת להיפסק. בכל פריים, הנמך את shake בהדרגה לכיוון 0 באמצעות move_toward, כך שהקפיצות ייעשו קטנות יותר.

shake = move_toward(shake, 0.0, 30.0 * delta)

כש־shake מגיע ל־0, שני המספרים האקראיים הם 0, ו־offset חוזר להיות Vector2(0, 0).

challenge icon

אתגר

בינוני

נערו את המסך כשהרובוט רוקע ברגלו.

  1. בתוך _process, קרבו את shake אל 0 באמצעות 30.0 * delta ועם move_toward.
  2. הגדירו את offset כ-Vector2 עם ערכי x ו-y אקראיים בין -shake ל-shake.

לחצו על "שחק" ולחצו על E כדי לרקוע ברגל: התצוגה רועדת ואז מתייצבת. לאחר מכן לחצו על "בדיקה".

נסו בעצמכם

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
quiz iconבחנו את עצמכם

השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.

כל השיעורים ביחידה התחושה של המשחק

תרגלו בעצמכם: Godot אונליין