Menu
CoddyTech

Golf sur billes

Fait partie de la section Physique et gameplay du Journey Unity de Coddy. Leçon 68 sur 71.

Joue au golf avec une bille sur un petit green. La bille commence sur le tee : vise-la avec les flèches, maintiens la barre d’espace enfoncée pour accumuler de la puissance, puis relâche-la pour tirer. Elle roule, rebondit sur les coussins et le bloc au milieu, puis ralentit ; une fois qu’elle est assez lente, elle s’arrête net. Ce n’est qu’alors que tu peux tirer à nouveau. Une bille qui roule lentement dans le trou y tombe ; une bille qui arrive trop vite passe tout droit par-dessus. Moins tu fais de coups, mieux c’est.

Écris deux scripts : Golf sur la bille et Hole sur le trou.

challenge icon

Défi

Difficile

Écris le script de la bille de golf : vise, charge, tire.

  1. Fais pivoter aim avec l’axe Horizontal brut à aimSpeed ; place pointer à transform.position + Quaternion.Euler(0f, aim, 0f) * Vector3.forward.
  2. À l’arrêt (vitesse inférieure à stopSpeed), maintenir la barre d’espace charge power au rythme de chargeRate, jusqu’à maxPower ; la relâcher propulse la bille dans la direction visée (Impulse), réinitialise power et affiche "Stroke " + strokes.
  3. Dans FixedUpdate(), à l’arrêt, mets les deux vélocités à zéro.

Appuie sur « Jouer » et effectue un putt. Puis clique sur « Vérifier ».

Essayez vous-même

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>();
    }

    // viser avec les flèches, charger avec Space, tirer en relâchant, arrêter quand la vitesse est faible
}

Toutes les leçons de Physique et gameplay

Entraînez-vous par vous-même : Playground Unity