Anda di halaman 1dari 13

LAPORAN PRAKTIKUM

GAME EDUKASI

MODUL 10

ANIMASI GAME

Oleh :

IKHWAN CAESAR AMRI PRADANA A710170079

Program Studi Pendidikan Teknik Informatika

Fakultas Keguruan dan Ilmu Pendidikan

Universitas Muhammadiyah Surakarta

2020
Mata Kuliah : Praktikum Game Edukasi Acc :
Prodi : Pendidikan Teknik Informatika
Nama : Ikhwan Caesar Amri Pradana
NIM : A710170079
Tgl. Praktikum : 22 Juni 2020

BAB X

ANIMASI GAME

A. DASAR TEORI
Sistem animasi Unity didasarkan pada konsep klip animasi, yang
berisi informasi tentang bagaimana objek tertentu harus mengubah
posisi, rotasi, atau sifat lainnya dari waktu ke waktu. Setiap klip biasanya
dianggap sebagai rekaman linear tunggal. Klip animasi dari sumber
eksternal diciptakan oleh seniman atau animator dengan perangkat
lunak seperti Max atau Maya, Blender, motion capture atau dari sumber
lainnya. Klip Animasi kemudian disusun menjadi sistem seperti
flowchart terstruktur yang disebut Animator Controller.
Animator controller bertindak sebagai ”State machine” yang
melacak klip mana yang seharusnya diputar saat ini, dan kapan animasi
harus berubah atau digabungkan. Meskipun Mecanim lebih
direkomendasikan untuk digunakan, akan tetapi Unity masih
mempertahankan sistem animasi lawas yang ada pada Unity 4.
Kedepannya, Unity bermaksud untuk menghapuskan sistem animasi
Legacy pada semua kasus dengan menggabungkan workflow kedalam
Mecanim.
Game engine Unity memiliki fitur animasi seperti game engine
kebanyakan. Fitur animasi ini meliputi animasi yang dapat ditargetkan
(retargetable), full kontrol penuh bobot animasi saat runtime,
pemanggilan event dari animasi playback, hierarki dan transisi state
machine, dll. Unity memiliki sistem animasi yang biasa disebut dengan
Mecanim. Didalamnya menyediakan:
 Alur kerja yang mudah dan pengaturan animasi untuk semua unsur
Unity termasuk objek, karakter, dan properties.
 Dukungan untuk klip animasi impor dan animasi yang dibuat dalam
Unity.
 Penargetan animasi humanoid - kemampuan untuk menerapkan
animasi dari satu model karakter ke model yang lain.
 Alur kerja yang disederhanakan untuk menyelaraskan klip animasi.
 Pratinjau klip animasi yang mudah dilihat, transisi dan interaksi di
antara keduanya. Hal ini memungkinkan animator untuk bekerja
secara mandiri dari Programmer, prototype dan pratinjau animasi
sebelum game play tersambung dengan source code.
 Manajemen interaksi yang kompleks antara animasi dengan tool
pemrograman visual.
 Melakukan animasi bagian yang berbeda dengan logika yang berbeda.

Untuk mencoba animasi, cukup klik tombol play di window


Animation. Animasi ini juga akan berjalan saat kita masuk ke mode Play
game. Animasi yang telah dibuat bisa diatur durasinya dengan
menggeser keystone ke titik terjauh. Kondisi awalnya, animasi akan
berjalan selama 1 detik dengan 60 titik sampel. Ini bisa kita ubah-ubah
sesuai kebutuhan.Apabila animasi sudah dibuat, kita masih bisa
mengatur ulang perjalanan properti yang dianimasikan. Ini bisa
dilakukan baik dengan keystone ataupun dengan kurva, sehingga
pengaturan bisa lebih detail dan presisi. Adapun klip yang sudah
tersimpan dalam Animator bisa kita panggil lagi dengan cara
memasukkan Animator sebagai kontroler animasi, untuk objek yang
diinginkan. Ini adalah cara yang baik untuk menggunakan ulang animasi
yang sudah ada.
Pada akhirnya, kini kita sudah memiliki animasi untuk objek-
objek kita di Unity dan ini dilakukan dengan sangat cepat dan sederhana.
Kita hanya cukup memilih properti dari objek yang diinginkan, kemudian
kita atur perubahan propertinya dengan Animation. Melalui artikel
singkat ini, kita juga telah melihat peran dari Animator dan Animation
Clip. Game maker merupakan suatu program yang bisa dikatakan cukup
simple dan mudah untuk digunakan. Dengan program ini anda dapat
menciptakan game jenis apa saja yang anda inginkan seperti: racing,
action, fighting, rpg, adventure, puzzle, tactic, simulation dll. Program ini
lebih focus pada game berjenis 2D tetapi program ini juga menyediakan
feature yang memungkinkan anda untuk membuat game jenis 3D ,namun
anda tidak bisa membuat game sekelas “Halo”, ”Empire Earth”, “Need for
Speed”, dengan program ini. Karena feature 3D yang diberikan hanya
untuk membuat game 3D yang sederhana. Script yang dipakai adalah
GML (Game Maker Language) yang juga bisa dipadukan dengan
programming language seperti Delphi,C,dan sebagainya,hal ini bisa
dilakukan dalam kapasitas penggunaan DLL (Dynamic Link
Library,berupa semacam plugin yang mengandung fungsi-fungsi yang
tidak dimiliki oleh GameMaker).

B. TUJUAN PRAKTIKUM
1. Mahasiswa dapat membuat animasi Mecanim dengan Unity
2. Mahasiswa dapat melakukan import objek beserta animasi ke dalam
Unity
3. Mahasiswa dapat melakukan manipulasi animasi melalui kontrol

C. HASIL DAN ANALISA


Kegiatan 1 : Dasar Animasi Mecanim

Gambar 10.1 Dasar Animasi Mecanim


Pada kegiatan ini hal yang di lakukan adalah membuat dasar
animasi mecanim seperti gambar diatas. Hal pertama yang harus
dilakukan adalah tambahkan komponen Animator pada Cube melalui
menu Component → Miscellaneous → Animator. Tampilkan window
Animation melalui menu Window → Animation ,maka window animasi
akan muncul. Tekan tombol ”Create” untuk membuat animasi baru, dan
beri nama sesuai keinginan, misalnya ”AnimBox”. Timeline animasi akan
tampil, dan disitulah tempat untuk mengolah animasi.Pindahkan garis
Timeline ke posisi 0.5 dengan cara drag dan geser. Selanjutnya pindahka
pula posisi objek Cube dengan cara menggeser atau merubah koordinat
posisi sumbu, misalnya sumbu X saja.Geser titik Timeline ke posisi 1.0
dan ubah skala X menjadi 0.6. Pindahkan lagi Timeline ke posisi 1.10 dan
kembalikan skala X Cube menjadi 1. Pindahkan Cube ke titik 1.5, dan
lakukan copy + paste (Ctrl C & Ctrl V) dari keyframe 0.0, sehingga
posisinya akan kembali seperti posisi awal. Jalankan project dengan cara
menekan tombol play, maka Cube akan bergerak secara looping.
Hentikan play project dan kembali pilih objek Cube. Perhatikan
komponen Animator pada window Inspector, maka dibagian Controller
akan terlihat Animator dengan nama Cube. Klik bagian itu maka akan
diarahkan ke Animator Cube. Double klik pada Animator Cube tersebut
maka window Animator akan terbuka yang berisi state AnimBox dan
beberapa state default lain. Buat state baru dengan cara klik kanan →
Create State → Empty lalu ganti nama New State tersebut menjadi state
Diam. Klik kanan state ”Diam” tersebut dan pilih ”State as Default Layer”.
Supaya animasi tersebut dapat dikontrol, maka perlu dibuat Script. Buat
Script baru C#, misalnya dengan nama ”KontrolAnimasiBox” dan
tambahkan beberapa baris script. Jalankan project, maka ketika tombol
spasi ditekan, animasi Cube akan berjalan terus menerus alias looping.
Supaya tidak looping, uncheck bagian Loop time.
Dalam kegiatan ini adalah mekanisme animasi objek
cubeberdasarkan panduan modul praktikum. Animasi objek cube
tersebut akanbergeser ke kanan dan ukurannya berubah. Untuk
mengatur animasi tersebut dapat dilakukan pada window Animation.
Sedangkan tombol spasi pada keyboard digunakan untuk mengontrol
animasi tersebut. Ketika menjalankan project tersebut, maka ketika
tombol spasi ditekan beberapa kali, animasi Cube hanya berjalan sekali
saja. Hal ini terjadi karena tidak ada transisi kembali ke kondisi state
”Diam”. Untuk itu perlu dilakukan transisi kembali ke posisi awal supaya
ketika keyboaard spasi ditekan maka animasi Cube akan tetap berjalan.
Caranya adalah dengan kembali ke window Animator, klik kanan Anim
Box→Make Transition. Arahkan ke state Diam sehingga membentuk
anak panah mengarah ke state Diam. Maka ketika project dijalankan,
maka ketika tombol spasi keyboard ditekan akan menjalankan animasi
secara berulang.
Kegiatan 2 : Animasi Mecanim Karakter

Gambar 10.2 Animasi Mecanim Karakter


Hal pertama yang harus dilakukan adalah download karakter
humanoid dari Unity Asset Store, cari dengan keyword ”Character”,
lakukan filter dengan cara memilih ”freeonly” untuk mendapatkan
karakter gratis. Setelah ketemu sesuai dengan yang diinginkan, import
kedalam project karakter tersebut.Browse dan cari sebuah karakter di
folder prefab yang sudah diimport, dan masukkan kedalam Scene dengan
cara drag and drop. Buat Animator Controller baru dengan melalui menu
Assets → Create → Animator Controller → beri nama KontrolKarakter.
Pasang pada bagian Controller yang kosong. Lakukan editing dengan cara
double klik kontroller tersebut, dan buat state baru dengan cara klik
kanan → Create State → Empty. Ganti nama state menjadi Iddle yang
akan dijadikan default entry. Perhatikan bagian Motion terlihat bahwa
belum ada animasi atau None. Untuk itu, perlu ditambahkan dengan cara
drag and drop dari project atau mencari karakter Supercyan (karakter
yang tadi diimport) Iddle. Sehingga bagian motion akan berisi animasi
Iddle dan centang properti Foot IK. Sebelum membuat Script kontrol,
buat state baru lagi pada window Animator dengan nama Walk: klik
kanan → Create State → Empty → Ganti namanya menjadi Walk.
Caranya hampir sama dengan proses pembuatan state Iddle. Isi bagian
Motion dengan animasi Walk yang bisa dicari dari project window. Buat
Script C# baru yang dipasang pada karakter tersebut misalnya dengan
nama ”KontrolAnimasi”.

D. TUGAS
1) Tambahkan translasi pada karakter yang dianimasikan pada kegiatan
2 sehingga ketika melakukan animasi berjalan, karakter tersebut
bergerak maju.
Jawab :
Gambar 10.3 Membuat Objek Bergerak Maju
Pada tugas 1 ini adalah membuat object dapat bergerak dan
berjalan ke dapan. Hal yang pertama dilakukan adalah menambahkan
script pada pada object, disini saya menggunakan script sebelumnya
dimana dalam script tersebut saya tambahkan beberapa script baru,
di atas void start ada penambahan script yaitupublic float speed =
10.0f; kemudian pada void update tambahkan script Vector3 input =
new Vector3 (Input.GetAxisRaw (“Horizontal”), 0, Input.GetAxisRaw
(“Vertical”)); transform.position += input*speed*Time.deltaTime; if
(Input.GetKey (KeyCode.UpArrow)) anim.Play(“Walk”);}. Script
tersebut digunakan untuk menggerakkan object, dan ketika kita
menekan tombol panah atas maka object tersebut akan bergerak dan
berjalan menuju ke depan.

2) Cari Karakter lain dari Asset Store atau dari sumber lain, kemudian
import ke project dan jalankan animasi yang ada (misalnya, jalan, lari,
melambai, maupun animasi lain yang ada didalamnya) dengan
Mecanim system.
Jawab :
Gambar 10.4 Mengatur Pergerakan Objek
Pada tugas 2 kali ini saya menggunakan object karakter yang
saya download di assets store. Kemudian object tersebut akan
melambaikan tangan, melompat, dan berjalan kedepan. Disini saya
menggunakan mecanim system dimana object dapat kita atur
pergerakannya sesuai dengan keinginan kita. Caranya sama seperti
kegiatan 3 diatas, buat Animator Controller baru melalui menu Assets
→ Create → Animator Controller → beri nama sesuai keinginan kita,
disini saya berinama Locomotion. Pasang pada bagian Controller
yang kosong. Lakukan editing dengan cara double klik kontroller
tersebut, dan buat 3 state baru dengan cara klik kanan → Create State
→ Empty. Ganti nama state menjadi IddlesWave untuk melambaikan
tangan, Jump untuk melompat, WalkRun untuk berjelan. Perhatikan
bagian Motion terlihat bahwa belum ada animasi atau None. Untuk
itu, perlu ditambahkan dengan cara drag and drop dari project atau
mencari karakter Supercyan (karakter yang tadi diimport). Kemudian
hubungkan 3 state tersebut dengan Iddle yang berwarna orange.
Setelah itu tambahkan script yang dipasang pada object karakter
tersebut.

3) Cari karakter dengan format Blender, lakukan import kedalam


project dan jalankan animasi yang ada didalamnya.
Jawab :

Gambar 10.5 Mengimport Karakter


Pada tugas yang ketiga ini adalah tentang import object
karakter dari Blender ke dalam Unity kemudian menggerakkan object
karakter tersebut. Disini saya menggunakan object karakter android
yang merupakan object karakter yang saya buat pada mata kuliah
sebelumnya. Dalam pengimportan object tersebut yang harus
diperhatikan adalah kita harus memiliki aplikasi Blender didalam
laptop atau PC kita, bila tidak maka akan terjadi eror “Blender not
found”. Hal pertama yang harus dilakukan adalah atur animasi dari
object andriod itu terlebih dahulu menggunakan aplikasi Blender,
disini saya buat object android tersebut seakan-akan berjalan dengan
menggerakkan kaki dan juga tangan. Setelah proses setting object
android di dalam Blender tersebut selesai, Save As project tersebut
dalam format blend kedalam folder project Unity yang sudah
disiapkan. Kembali ke aplikasi Unity, maka secara otomatis object
android tersebut akan terimport kedalam project. Seleksi prefab
android.blend lalu pada inspector window pilih Animations, hapus
pada bagian Clips mode default dengan klik tanda “-“, centang pada
Loop Pose lalu Apply. Untuk menggerakkannya perlu adanya suatu
controller, tambahkan pada project window dengan cara klik kanan
→ Create → Animator Controller → beri nama AndroidCtrl, double
klik maka akan diarahkan ke window Animator, tambahkan state
baru dengan cara klik kanan → Create State → Empty → beri nama
Walk → pada inspector window bagian Motion isikan Animasi
berjalan dari android itu tadi. Selanjutnya drag and drop
android.blend dari project window ke dalam scane window, pada
inspector window bagian Animator Controller masukan controller
yang sudah dibuat sebelumnya yaiut AndroidCtrl, jalankan project
maka object android tersebut bergerak seakan berjalan.

E. KESIMPULAN DAN SARAN


a. Kesimpulan
1) Sistem animasi Unity didasarkan pada konsep klip animasi, yang
berisi informasi tentang bagaimana objek tertentu harus
mengubah posisi, rotasi, atau sifat lainnya dari waktu kewaktu.
2) Saat dibuat pertama, Unity akan membuat 2 objek sekaligus,
Animator dan Animation Clip. Animation Clip adalah klip animasi
yang disimpan dalam Animator. Nantinya, sebagai penyimpan
animasi, Animator bisa kita gunakan di objek yang berbeda untuk
memanggil Animation Clip milik Animator tersebut. Usai
Animation Clip diberi nama dan disimpan, kita bisa langsung
menambahkan properti yang ingin kita animasikan.
b. Saran
Cobalah mendownload beberapa objek karakter yang berbeda
kemudian cobalah untuk menggerakkan objek-objek tersebut agar
memiliki fungsi yang berbeda-beda tiap objeknya, hal ini akan
meningkatkan daya fikir user dalam memainkan game tersebut.
F. DAFTAR PUSTAKA
[1] Sukirman. [2017]. Praktikum Game Edukasi. Surakarta : Universitas
Muhammadiyah Surakarta
[2] Sistem Animasi Unity.[2017]. Diakses pada, Sabtu, 07 Juli 2018.
[3] Memberikan Script pada Animasi Unity. [2017]. Diakses pada Sabtu,
07 Juli 2018.

Anda mungkin juga menyukai