Friday 5 June 2015

Unity Tutorial : Menambah Animasi pada Objek Game di Unity [part 3]

Advertisement

Ini adalah lanjutan dari tutorial sebelumnya Menambah Animasi pada Objek Game Di Unity [part 2]


MULAI

Perlu diingat, sebelumnya kita sudah membuat beberapa komponen yaitu :
- Animasi Diam
- Animasi Jalan
- Parameter Bool dengan nama "Berjalan".

Buat sebuah script C# baru pada folder Scripts, beri nama bebas sekreatif mungkin.


1. AnimasiKamera.cs
using UnityEngine;
using System.Collections;

public class AnimasiKamera : MonoBehaviour {

Animator anim;

void Awake(){
anim = GetComponent<Animator>();
}

void Update(){
float h = Input.GetAxisRaw("Horizontal");
float v = Input.GetAxisRaw("Vertical");

bool mulaiBerjalan = h != 0 || v != 0;
anim.SetBool("Berjalan", mulaiBerjalan);
}
}




Tuliskan listing program ini ke dalam C# tadi. Script ini bertujuan ketika objek bergerak/berjalan dengan tombol W,A,S,D maka animasi "Jalan" akan dieksekusi.

Penjelasan Listing Program.
Setelah membuat sebuah animasi, sistem unity secara otomatis menambahkan komponen Animator ke dalam objek.

Animator anim; 
Ini artinya komponen Animator tadi akan digunakan atau dipanggil di dalam listing program, "anim" adalah nama variabel Animator.

Method void Awake sudah dijelaskan di C# : Pengenalan Method-Method Utama di Unity.

anim = GetComponent<Animator>();
Variabel anim mengambil komponen Animator, agar Animator pada objek dapat digunakan oleh si variabel anim.

Input.GetAxis()
float h = Input.GetAxisRaw("Horizontal"), artinya variabel h menerima inputan berupa nilai pecahan dari kordinat X, yaitu tombol A dan D. Begitu juga untuk float v = Input.GetAxisRaw("Vertical").

bool mulaiBerjalan = h != 0 || v != 0;
Dibacanya begini ("nilai h tidak sama dengan nol ATAU nilai v tidak sama dengan nol" maka variabel mulaiBerjalan bernilai "true"), jika nilai h dan v = 0 maka mulaiBerjalan bernilai "false".
Ingat Bool hanya memiliki 2 nilai "true" dan "false".

anim.SetBool("Berjalan", mulaiBerjalan);
anim.SetBool
anim adalah nama variabel, SetBool adalah fungsi yang ada di dalam komponen Animator. 
Penggunaan SetBool karena dalam proses keterhubungan animasi, sebelumnya dibuat parameter "Bool". Jika yang buat adalah parameter "Trigger" maka ditulis anim.SetTrigger

anim.SetBool("Berjalan", mulaiBerjalan);
"Berjalan" adalah nama parameter Bool yang sebelumnya dibuat dan mulaiBerjalan memberikan instruksi kepada "Berjalan" apakah animasi akan digerakan atau tidak.

Jika nilai mulaiBerjalan adalah true maka animasi akan dijalankan.




Jika sudah, tambahkan script tadi ke objek yang memiliki animasi atau yang akan dianimasikan. pada tutorial ini C# diberikan ke Kamera FPC.



Jalankan game, kemudian coba berjalan dan diam.

Bagaimana jika animasi yang dibuat tidak dari Unity tapi dari aplikasi lain seperti Blender ? pertanyaan ini akan dijawab pada tutorial  Animator : Menjalankan Animasi dari Blender Di Unity


SELESAI


EmoticonEmoticon