Menu
CoddyTech

הכדור המתגלגל

חלק מהיחידה פיזיקה ומשחקיות במסלול ה-Unity של Coddy. שיעור 27 מתוך 63.

בפרק הזה בונים משחק קטן, Coin Rush. מגלגלים כדור ברחבי זירה מוקפת קירות בעזרת החצים ואוספים מטבעות לפני שהזמן נגמר. שני סקריפטים חולקים ביניהם את העבודה, כפי שהיו עושים בפרויקט Unity: Ball מזיז את הכדור ועוקב אחר הניקוד והזמן, ו-Coin נמצא על כל מטבע. Coin.cs מתחיל כמחלקה ריקה, והשיעור הבא ממלא אותה.

כדור מתגלגל כשדוחפים אותו במקום להציב אותו. דחפו את ה-Rigidbody שלו בעזרת AddForce והשאירו את הסיבוב שלו חופשי: הכוח מזיז את הכדור, והחיכוך מהרצפה אוחז בתחתית הכדור וגורם לו להסתובב. כדור הבאולינג הזה מתגלגל לאורך המסלול שלו כל עוד מקש הרווח לחוץ:

public float push = 6f;
private Rigidbody rb;

void Start()
{
    rb = GetComponent<Rigidbody>();
}

void FixedUpdate()
{
    if (Input.GetKey(KeyCode.Space))
    {
        rb.AddForce(Vector3.forward * push);
    }
}

כדור שמתגלגל בלי להחליק מסתובב במהירות השווה למהירותו חלקי הרדיוס שלו, לכן כדור ברדיוס 0.5 שנע במהירות של 3 יחידות לשנייה מסתובב במהירות של 6 רדיאנים לשנייה (rb.angularVelocity). שנו במקום זאת את transform.position, או הקפיאו את הסיבוב שלו תחת Constraints של ה-Rigidbody, והוא יחליק כמו דיסקית בלי להסתובב. כדור פשוט בצבע אחיד נראה אותו הדבר בשני המקרים: כדי לראות את הגלגול, צפו ב-Angular Velocity שבמקטע Info של ה-Rigidbody בזמן שהמשחק פועל.

challenge icon

אתגר

בינוני

התחל את Coin Rush עם הכדור. המפקח נותן ל-Ball כוח force בעוצמה 10.

  • ב-Start(), שמור את ה-Rigidbody של הכדור בתוך rb.
  • ב-FixedUpdate(), דחוף את הכדור באמצעות החצים: Input.GetAxis("Horizontal") לאורך ציר x ו-Input.GetAxis("Vertical") לאורך ציר z, ובשני המקרים בעוצמת force.
  • השאר את הסיבוב שלו חופשי כדי שיוכל להתגלגל.

השאר את Coin.cs כמו שהוא לעת עתה. לחץ על Play, לחץ על המשחק והתגלגל ברחבי הזירה, ואז לחץ על Check.

נסו בעצמכם

using UnityEngine;

public class Ball : MonoBehaviour
{
    public float force = 10f;
    private Rigidbody rb;

    void Start()
    {
    }

    void FixedUpdate()
    {
        // דחפו את הכדור באמצעות החצים: Horizontal לאורך x, Vertical לאורך z.
    }
}
quiz iconבחנו את עצמכם

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

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