Menu
CoddyTech

גולף גולות

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

גולף עם גולה על משטח ירוק קטן. הגולה מתחילה בנקודת הזינוק: מכוונים אותה בעזרת החצים, מחזיקים את מקש הרווח כדי לצבור כוח ומשחררים כדי לחבוט. היא מתגלגלת, קופצת מהדפנות ומהבלוק שבאמצע ומאטה, וכשהיא אטית מספיק היא נעצרת לחלוטין. רק אז אפשר לחבוט שוב. גולה שמתגלגלת אל הגומה באטיות נופלת פנימה; גולה שמגיעה מהר מדי מתגלגלת ישר מעליה. ככל שמספר החבטות קטן יותר, כך טוב יותר.

כתבו שני סקריפטים: Golf על הגולה ו-Hole על הגומה.

challenge icon

אתגר

קשה

כתבו את הגולה למשחק גולף: כוונו, צברו עוצמה וירו.

  1. סובבו את aim באמצעות הציר האופקי הגולמי במהירות aimSpeed; הציבו את pointer במיקום transform.position + Quaternion.Euler(0f, aim, 0f) * Vector3.forward.
  2. במנוחה (מהירות נמוכה מ־stopSpeed), החזקת מקש הרווח מגדילה את power בקצב chargeRate עד maxPower; שחרור המקש מעיף אותה בכיוון הכוונת (בדחף), מאפס את power ומתעד את "Stroke " + strokes.
  3. ב־FixedUpdate(), במנוחה, אפסו את שתי המהירויות.

לחצו על „שחק” וחבטו בכדור. לאחר מכן לחצו על „בדיקה”.

נסו בעצמכם

using UnityEngine;

public class Golf : MonoBehaviour
{
    public int strokes = 0;
    [SerializeField] private Transform pointer;
    [SerializeField] private float aimSpeed = 90f;
    [SerializeField] private float chargeRate = 4f;
    [SerializeField] private float maxPower = 6f;
    [SerializeField] private float stopSpeed = 0.3f;
    private Rigidbody rb;

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

    // כוונו באמצעות החצים, טענו באמצעות Space, חבטו עם שחרור המקש, עצרו כשהכדור נע לאט
}

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

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