Menciptakan Pergerakan Pemain dalam Kesatuan

Membuat gerakan pemain di Unity melibatkan kombinasi penanganan input dan mengubah posisi pemain. Berikut panduan langkah demi langkah untuk menerapkan gerakan dasar pemain:

Buat Objek Game Pemain

Buat GameObject di adegan Anda untuk mewakili pemain. Anda dapat menambahkan model 3D atau penyaji sprite untuk memvisualisasikan pemutar.

Tambahkan Komponen Benda Kaku

Lampirkan komponen Rigidbody ke Player GameObject untuk mengaktifkan interaksi fisika. Ini akan memungkinkan pemain untuk merespons kekuatan dan tabrakan.

Penanganan Masukan

Tangani masukan pemain untuk menentukan arah gerakan. Dalam skrip Unity, Anda dapat menggunakan sistem masukan bawaan, seperti 'Input.GetAxis', untuk mengambil nilai masukan. Misalnya, Anda dapat menggunakan "Horizontal" untuk gerakan kiri-kanan dan "Vertical" untuk gerakan maju-mundur.

Pindahkan Pemain

Dalam skrip, gunakan nilai input untuk menghitung arah pergerakan pemain. Kalikan arah dengan nilai kecepatan yang diinginkan untuk mengontrol kecepatan gerakan. Terapkan gerakan ini pada komponen Rigidbody pemain menggunakan 'Rigidbody.MovePosition' atau 'Rigidbody.velocity'.

// Example script for player movement
public class PlayerMovement : MonoBehaviour
{
    public float moveSpeed = 5f;
    private Rigidbody rb;

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

    private void FixedUpdate()
    {
        float horizontalInput = Input.GetAxis("Horizontal");
        float verticalInput = Input.GetAxis("Vertical");

        Vector3 movement = new Vector3(horizontalInput, 0f, verticalInput) * moveSpeed;

        rb.MovePosition(rb.position + movement * Time.fixedDeltaTime);
    }
}

Lampirkan Skripnya

Lampirkan skrip 'PlayerMovement' ke Player GameObject di Editor Unity. Pastikan komponen Rigidbody juga terpasang pada Player GameObject.

Uji Gerakan Pemain

Jalankan game dan uji gerakan pemain. Pemain sekarang harus bergerak sebagai respons terhadap sumbu masukan yang Anda tentukan. Sesuaikan nilai 'moveSpeed' untuk mengontrol kecepatan gerakan pemain.

Kesimpulan

Ini adalah implementasi dasar pergerakan pemain di Unity. Dari sini, Anda dapat meningkatkan gerakan dengan menambahkan animasi, menangani metode masukan yang berbeda (misalnya, keyboard, gamepad), menerapkan interaksi berbasis fisika, atau menerapkan batasan berdasarkan mekanisme permainan.