Menu
CoddyTech

Ôn tập: Bullet Time

Thuộc phần Xây dựng trò chơi thực tế trong hành trình Unity của Coddy. Bài học 37 trên 60.

Chương này đã làm thời gian trong trò chơi dừng lại, chậm đi rồi chạy lại. Chế độ làm chậm thời gian kết hợp các yếu tố đó: Time.timeScale nhỏ hơn, bước vật lý tương ứng và một đồng hồ đo đếm số giây thực.

challenge icon

Thử thách

Trung bình

Tạo hiệu ứng làm chậm thời gian cho trò chơi.

  1. Trong Update(), khi bạn giữ Space và focus > 0f: đặt tỷ lệ thời gian thành slowScale, bước vật lý thành 0.02f * slowScale, và focus giảm 1 đơn vị mỗi giây thực, không thấp hơn 0.
  2. Nếu không, đặt tỷ lệ thành 1f, bước thành 0.02f; khi bạn nhả Space, focus hồi lại với tốc độ recharge mỗi giây thực, tối đa bằng maxFocus.
  3. Sau đó, focusBar.fillAmount = focus / maxFocus;

Nhấn Chơi và giữ Space: mưa sẽ chậm lại. Sau đó nhấn Kiểm tra.

Tự làm thử

using UnityEngine;
using UnityEngine.UI;

public class BulletTime : MonoBehaviour
{
    public float slowScale = 0.2f;
    public float maxFocus = 2f;
    public float recharge = 0.5f;
    public Image focusBar;

    float focus;

    void Start()
    {
        focus = maxFocus;
    }

    void Update()
    {
        // Làm chậm thời gian khi giữ Space và còn focus; nếu không, thời gian chạy bình thường. Sau đó cập nhật thanh hiển thị.
    }
}
quiz iconTự kiểm tra

Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.

Tất cả bài học trong Xây dựng trò chơi thực tế

Tự luyện tập: Playground Unity