Monday, August 19, 2019

Menggerakan Karakter Dan Animasi Dengan Script C# Pada Unity 3D

Menggerakan Karakter Pada Unity

Jokam-Informatika.com Menggerakan objek animasi adalah hal yang seru, Jika sebelumnya sobat sudah membaca tutorial tentang cara mendapatkan aplikasi dan juga membuat sebuah objek atau pemain/karakter pada aplikasi Unity 3D menggunakan komputer atau laptop. Maka, langkah selanjutnya yaitu kita harus menggerakkan karakter ataupun pemain agar bisa berpindah tempat dari tempat satu ke tempat yang lainnya karena apabila pemain tidak bergerak maka hal tersebut bukanlah sebuah permainan ataupun game.

Ada tiga jenis perpindahan yaitu pindah ke kiri, ke kanan dan juga melompat atau ke atas. Ketiganya sendiri dapat kita terapkan menggunakan kode script yang didukung pada aplikasi Unity 3D yakni C#(CSharp) yang ada pada aplikasi Unity tersebut.

Bagaimanakah caranya dan skrip untuk menggerakan karakter game pada aplikasi unity 3D ?

Simak ulasan di bawah ini untuk mendapatkan kode dan juga tutorialnya, pastikan sobat teliti dalam menjalankan tutorial karena mengingat dalam tutorial memanfaatkan koding dan juga langkah-langkah yang harus anda mengerti juga pahami dalam hal logic(logika).

 

Menggerakan Karakter – Merupakan hal yang wajib pada sebuah game Unity 3D dan biasanya disertai juga dengan animasi tertentu yang mendukung gerakan tersebut misalkan melompat maka animasi nya juga tentunya melompat. Adapun sumbu yang digunakan ada tiga yaitu sumbu X, Y dan Z pada pergerakan karakter. Animasi juga diperlukan agar karakter tidak berjalan secara diam sehingga tidak terasa monoton ketika pengguna sedang memainkannya, apabila sobat sudah mempelajari artikel sebelumnya mungkin anda hanya tinggal melanjutkan tutorial ini.

Sedangkan C# adalah salah 1 jenis pemrograman yang didukung oleh aplikasi Unity 3D, C# merupakan simbol huruf apabila jenis pemrograman ini dibaca yaitu “CSharp“.

Untuk persyaratan agar karakter dapat berjalan dengan baik maka media alas atau tanah harus diberi collider sepanjang dari perjalanan ataupun pergerakan karakter.

Mungkin tidak ada penjelasan khusus dari admin tentang penjabaran pergerakan pada karakter di dalam game, jadi langsung saja kita menuju ke tutorial yaitu coding untuk menjalankan gerak dari sebuah karakter player.

 

Membuat Script Baru Untuk Karakter

Sebelum kita menerapkan pengkodean ke dalam aplikasi Unity 3D, maka proses tahap awal pastinya kita harus membuat sebuah file script yang nantinya akan difungsikan untuk menampung strip yang akan kita buat nantinya, apabila script sudah selesai maka kita dapat memasukkan script ke dalam karakter. Berikut ini adalah tutorial cara membuat file script C# :

  • Pertama, Pastikan kita dalam keadaan membuka aplikasi Unity 3D kemudian (1). Klik kanan mouse pada area project. (2). Kemudian klik “Create” untuk membuat. (3). Lalu pilihlah “C# Script“.

Create Script

  • Kedua, Anda akan menjumpai file baru dan rename nama file dengan mengklik 1x saja pada nama file dan ubah nama file sesuai dengan keinginan sobat misalkan “Player_Controller“.

NB : Untuk penulisan nama tidak boleh diawali dengan nomor dan mengandung karakter tertentu yang dilarang ataupun spasi pada nama file.

Dalam tahap ini kita sudah selesai dalam membuat script baru untuk dijadikan media tempat kita menaruh coding pergerakan karakter agar bisa bergerak ketika dimainkan.

 

Menggerakan Karakter Pada Unity Dengan Script Koding

Ketika kita sebelumnya sudah membuat script baru untuk penempatan coding pergerakan karakter maka kita bisa membukanya dengan cara dobel klik pada file untuk mengedit dan menempatkan coding kita. Untuk coding pergerakan tidak saya kumpulkan(menjadi satu coding) dan akan saya bagi menjadi tiga bagian dengan tujuan agar sobat mengerti tentang kinerja dari coding dan juga pergerakan nya.

Berikut ini adalah tutorial dan coding untuk menggerakkan karakter game didalam aplikasi unity 3D :

    • Pertama, Dobel klik pada file coding yang sebelumnya sudah kita buat pada tutorial di atas maka secara otomatis file script akan terbuka oleh aplikasi “Mono Devlop” sebagai aplikasi bawaan untuk mengedit koding C#.

Mono sendiri adalah aplikasi bawaan dari aplikasi unity 3D dan memiliki fungsi untuk mengedit script tepatnya adalah C#(CSharp).

    • Kedua, masukan beberapa script berikut ini pada  public class Player_Controller : MonoBehaviour { DISINI }  dengan koding berikut :
// Delarasi untuk AnimationAnimator Animation;// Deklarasi untuk kecepatan gerak dan lompatpublic int Speed;public int Jumping;// Deklarasi untuk fungsi Rigidbody2D ketika melompatRigidbody2D Jump;
    • Ketiga, pada  void Start () { DISINI }  masukan ini untuk mendukung fungsi diatas :
// Berfungsi untuk mengambil komponen dari project kita tentang Animator dan Rigidbody2DAnimation = GetComponent<Animator> ();Jump = GetComponent<Rigidbody2D> ();
    • Keempat, Kemudian masukan pada  void Update () { DISINI }  untuk fungsi gerak dan melompatnya disertai dengan tombol kontrol keyboard. Berikut ini adalah koding sesuai dengan arah gerak dan tombol yang dipakai :

 

Gerak Kiri (Keyboard A)

if (Input.GetKey (KeyCode.A)) { // Fungsi untuk mendapatkan kode Keyboard A. transform.Translate (Vector2.left * Speed * Time.deltaTime); //Fungsi untuk gerakan karakter ke kiri sesuai dengan kecepatan input. Animation.SetBool ("Walk Pocong", true); // Fungsi untuk menyalakan animasi berjalan.} else if (Input.GetKey (KeyCode.A) && Input.GetKey (KeyCode.Space)) { // Fungsi jika kode Keyboard yang di gunakan A dan Spasi maka tetap menerapkan fungsi gerak ke kiri. transform.Translate (Vector2.left * Speed * Time.deltaTime);//Fungsi untuk gerakan karakter ke kiri sesuai dengan kecepatan input. Animation.SetBool ("Walk Pocong", true); // Fungsi untuk menyalakan animasi berjalan.} else { // Fungsi jika kondisi yang di hadapi selain Keyboard A dan Keyboard A+Spasi. Animation.SetBool ("Walk Pocong", false); // Fungsi untuk mematikan animasi berjalan.}

 

Gerak Kanan (Keyboard D)

if (Input.GetKey (KeyCode.D)) { // Fungsi untuk mendapatkan kode Keyboard D. transform.Translate (Vector2.right * Speed * Time.deltaTime); //Fungsi untuk gerakan karakter ke kanan sesuai dengan kecepatan input. Animation.SetBool ("Walk Pocong", true); // Fungsi untuk menyalakan animasi berjalan.} else if (Input.GetKey (KeyCode.D) && Input.GetKey (KeyCode.Space)) { // Fungsi jika kode Keyboard yang di gunakan D dan Spasi maka tetap menerapkan fungsi gerak ke kanan. transform.Translate (Vector2.right * Speed * Time.deltaTime); //Fungsi untuk gerakan karakter ke kanan sesuai dengan kecepatan input. Animation.SetBool ("Walk Pocong", true); // Fungsi untuk menyalakan animasi berjalan.} else { // Fungsi jika kondisi yang di hadapi selain Keyboard D dan Keyboard D+Spasi. Animation.SetBool ("Walk Pocong", false); // Fungsi untuk mematikan animasi berjalan.}

 

Melompat (Keyboard Spasi)

if (Input.GetKey (KeyCode.Space)) { // Fungsi untuk mendapatkan kode Keyboard Space. Jump.AddForce (new Vector2 (1, Jumping)); //Fungsi untuk melompat menggunakan Vector 2 dengan kecepatan input Jumping. Animation.SetBool ("Jump Pocong", true); // Fungsi untuk menyalakan animasi melompat.}  else { // Fungsi jika kondisi yang di hadapi selain Keyboard Space. Animation.SetBool ("Jump Pocong", false); // Fungsi untuk mematikan animasi melompat.}

 

  • Kelima, Apabila semua tutorial sudah anda terapkan diatas maka save koding anda dengan cara ” CTRL + S “, kemudian jangan tutup editor mono sembari lihat atau pindah tab ke Aplikasi Unity 3D.
  • Keenam, Saat anda berada pada aplikasi Unity 3D pastikan sobat sudah (1). Menyeleksi karakter atau player yang sudah sobat buat. (2) Kemudian pada “Inspektor” scroll kebawah dan tambahkan komponen baru dengan klik “Add Component“. (3). Kemudian pilihlah “Script“. (4). Kemudian pilih script sebelumnya yang sudah kita setting diatas yakni “Player_Controller“.

Add Component

Player Controller

  • Ketujuh, Maka akan terlihat 2 hal yang harus anda isi yakni pada inspektor yang dapat anda scroll pada bagian bawah “Speed” dan “Jumping“, keduanya dapat sobat isi sesuai dengan keinginan sobat. Seperti gambar berikut ini :

Abillity Player

Keterangan :

Speed adalah kecepatan pergerakan ke kiri dan kekanan daripada karakter, semakin besar angka maka semakin cepat.
Jumping adalah kekuatan atau ketinggian lompatan karakter ketika melompat, semakin besar angka maka semakin tinggi lompatan.

 

Artikel terkait :

 

 

Mungkin itu yang dapat saya sampaikan didalam artikel saya yang berjudulkan Cara Menggerakan Karakter Dan Animasi Object Player Dengan Script C# Pada Aplikasi Unity 3D.
Semoga apa yang sudah saya sampaikan dapat bermanfaat bagi anda maupun orang lain yang ingin mengetahui tentang Menggerakan Karakter Dan Animasi Object Player Dengan Script C# Pada Aplikasi Unity 3D.
Sekian dan terimakasih.

Load Disqus Comments Hide Disqus Comments