Top Banner
25

Tutorial Membuat Game Dengan Unity Part 1

Jun 23, 2015

Download

Documents

Vadi Vanadi
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Tutorial Membuat Game Dengan Unity Part 1
Page 2: Tutorial Membuat Game Dengan Unity Part 1

2

Daftar Isi

Penting Dibaca 3

Projek baru 4

Simple FPS (First Person Shooter) 6

First Person Controller 6

Game Object 7

Transformasi (Move, Rotate & Scale) 8

Pencahayaan (Lighting) 11

Pistol Sederhana 14

Peluru 16

Scripting Dasar 17

Efek Ledakan 21

Build 23

Kesimpulan 24

Page 3: Tutorial Membuat Game Dengan Unity Part 1

3

PENTING DIBACA!!

1. Tutorial part 1 ini membahas dasar-dasar dalam menggunakan program Unity dari nol,

tanpa bantuan program lain selain Unity. Tujuan utama dari tutorial ini diantaranya agar

pembaca dapat memahami:

- Unity basic interface

- Konsep dasar program Unity

- Membuat game FPS sederhana dengan Unity

2. Jika anda merasa sudah advanced/expert dengan Unity, mungkin tutorial ini tidak cocok

untuk anda.

3. Program Unity yang digunakan adalah Unity Free version.

4. Mohon ikuti petunjuk tutorial ini tahap-per-tahap untuk kemudahan anda dalam memahami

pesan-pesan yang ingin disampaikan.

5. Tutorial ini menggunakan beberapa kata/kalimat dalam bahasa Inggris yang sulit

diterjemahkan dalam bahasa Indonesia. Sehingga dianjurkan anda mencari reverensi

dari sumber lain jika mengalami kesulitan dalam memahami suatu kata/kalimat. Harap

dimaklumi jika penulis tidak konsisten dalam penggunaan Bahasa Indonesia/ Inggris

dalam tutorial ini.

6. Silahkan meng-Copy atau menyebarkan tutorial ini tanpa ijin/ sepengetahuan penulis.

Asal jangan dijual :p

Page 4: Tutorial Membuat Game Dengan Unity Part 1

4

Projek baru

Ketika anda menjalankan program Unity, dia akan otomatis membuka project/dokumen yang terakhir

kali kita buka. Jika ini adalah pertama kali anda menggunakan Unity, maka biasanya project yang

terbuka adalah “Island Demo”. Sesuai namanya, ini adalah demo project dari unity. Sebelum kita

membuat project kita sendiri, tak ada salahnya kita sedikit berpetualang sejenak.

• Klik tombol play (Tombol ini berguna untuk melakukan test simulasi/game yang

telah kita buat).

• Setelah tombol play ditekan, silahkan anda ber eksplorasi (gunakan mouse untuk

melihat-lihat, gunakan keyboard W,S,A,D atau ↑↑↑↑,↓↓↓↓,←←←←,→→→→ untuk bergerak mundur, kiri

atau kanan, SPACE untuk melompat).

• Ini adalah contoh sederhana sebuah game First Person.

• Jika anda sudah puas berjalan-jalan, dan ingin berhenti, silahkan tekan kembali tombol

play untuk menghentikan simulasi. Selanjutnya kita akan mulai mengakrabkan diri kita

dengan Unity.

(Jika pulaunya tidak keluar, klik File > Open Scene, lalu pilih file Island.Unity)

Page 5: Tutorial Membuat Game Dengan Unity Part 1

5

Untuk membuat sebuah project baru Unity, pilih File > New Project.

Catatan : New Project berbeda dengan New Scene. Project adalah game keseluruhan yang anda

buat, sedangkan Scene adalah sebuah level dalam project game anda. Dengan kata lain, Project

game anda akan tersusun dari kumpulan beberapa Scene

Catatan : Unity membaca projectnya berupa sebuah folder yang isinya merupakan kumpulan aset-

aset pendukung game anda. Maka, sangat penting bagi anda untuk memperhatikan & menyusun baik-

baik sistem folderisasi project anda, akan dijelaskan lebih lengkap nanti, untuk sementara, jangan

dulu dipikirkan :p

• Pilih Browse untuk menentukan lokasi project Unity anda.

Terdapat pilihan Import the following packages:, ini adalah aset-aset dasar yang disediakan Unity.

• Untuk setingan standar cukup pilih Standard Assets.unityPackage.

• Toon Shading.unityPackage dapat dipilih jika anda ingin menggunakan aroma kartun

pada game anda.

• Setelah anda puas dengan pilihan anda, dan telah menentukan tempat yang baik untuk

folder project anda, silahkan tekan Create.

• Silahkan tunggu sejenak, Unity akan mengumpulkan aset-aset dasar ke dalam folder

project anda. Biasanya Unity akan secara otomatis menutup programnya, namun jangan

khawatir, silahkan bersabar… nikmati sejenak lagu mp3 yang sedang anda dengarkan,

atau cicipi sejenak kopi yang telah anda siapkan…

Jika progress bar sudah hilang, dan program Unity sudah kembali berjalan, maka anda telah berhasil

membuat project Unity baru yang kosong, dengan scene yang kosong. Dengan demikian, kita

langsung ke pelajaran pertama kita : Simple FPS (first Person Shooter)

Page 6: Tutorial Membuat Game Dengan Unity Part 1

6

Simple FPS (First Person Shooter)

Game FPS atau First Person Shooter atau dalam bahasa Indonesia disebut Tembak menembak

dalam Pandangan Orang ke-1, adalah game dimana kita seakan sedang menembaki musuh

dengan view kamera orang pertama. Contoh game laris yang menggunakan genre FPS adalah Doom,

F.E.A.R, Left 4 Dead, Counter Strike, dll. Namun jangan dulu berharap kita akan langsung membuat

game seperti itu. Mari kita pelajari dulu dasar-dasarnya.

Catatan : Setelah mengikuti tutorial FPS ini, mungkin beberapa orang akan berpikir bahwa ada

program lain yang lebih mudah untuk membuat game FPS, seperti FPS Creator. Memang, jika anda

ingin secara “ekspress” dan mudah membuat game FPS, FPS Creator lah jawabannya. Namun FPS

Creator tidak “customizeable”. Di sini kita akan belajar membuat sebuah game dari nol dengan

bantuan Unity. Dimana kita mempunyai “total control” atas game yang kita buat. Untuk mempelajari

dasar-dasarnya, kita gunakan contoh kasus dalam membuat game FPS.

First Person Controller

Untuk jenis kamera FPS, Unity dengan baik hati telah menyediakan template agar kita dapat langsung

mengaplikasikannya pada game kita.

Sebelum kita mulai, hapus terlebih dahulu kamera default yang ada di scene kita. (pilih lalu

tekan Delete). Sehingga scene kita benar-benar bersih.

• dalam panel Project, klik segitiga yang yang ada di sebelah folder Standard Assets,

• klik juga segitiga di sebelah folder Prefabs,

• lalu klik First Person Controller, tahan dan geser ke dalam layar utama

dengan demikian anda akan mendapati tambahan ikon kamera baru pada layar utama Scene

anda.

Kamera ini akan menjadi “mata” dalam game anda.

• tekan F untuk fokus pandangan viewport kepada prefab kamera yang baru saja anda

buat.

Page 7: Tutorial Membuat Game Dengan Unity Part 1

7

Game Object

Selanjutnya, mari kita tambahkan beberapa objek ke dalam game kita.

• pilih GameObject > Create Other > Plane

• jika plane yang telah anda buat bertumpuk dengan prefab First Person Controller,

maka coba anda turunkan plane tersebut dengan cara click & drag panah yang berdiri

vertikal.

Page 8: Tutorial Membuat Game Dengan Unity Part 1

8

Transformasi (Move, Rotate & Scale)

• Selanjutnya anda dapat mengubah posisi objek dalam unity dengan cara click & drag

sesuai dengan sumbu yang anda inginkan.

• Selain mengubah posisi, anda dapat mengubah rotasi dan skala dengan metode yang

sama. Silahkan anda bereksperimen dan membiasakan diri anda. Jangan khawatir, kalau

anda tidak puas, tinggal tekan Ctrl-Z (Undo).

Mengubah Skala :

Mengubah Rotasi :

Mengubah Posisi :

Page 9: Tutorial Membuat Game Dengan Unity Part 1

9

Sudah puas memutar-mutarnya? Kalau begitu, mari kita lanjutkan.

Plane yang kita buat barusan merupakan dasar atau “tanah” yang akan dijadikan pijakan oleh First

Person Controller. Selanjutnya mari kita tambahkan objek lain yang lebih menarik.

• sama seperti ketika kita membuat Plane, pilih GameObject > Create Other, namun

kali ini silahkan anda pilih bentuk-bentuk yang anda sukai, lalu taruh diatas plane yang

tadi. Gunakan geometri dasar Cube (kubus), Sphere (Bola), Capsule (kapsul),

Cylinder (Silinder), atau Plane.

Tips:

manipulasi kamera viewport:

• Mouse Scroll untuk zoom in/ zoom out

• Klik kanan + drag untuk mengubah rotasi pandangan

• Tekan F untuk fokus kepada objek yang anda pilih

• Ctrl-D untuk duplikat objek yang anda pilih. (hasil duplikasi objek akan berposisi sama

dengan objek sebelumnya)

Hierarchy:

Panel Hierarchy merupakan daftar benda-benda/objek yang telah kita buat. Panel ini berguna untuk

mempermudah pemilihan objek, juga dalam penamaan objek. Terutama jika scene yang kita buat

telah terdiri dari banyak objek dan sulit untuk dipilih secara manual lewat viewport.

Page 10: Tutorial Membuat Game Dengan Unity Part 1

10

• Gunakan Ikon Indikasi Tampak seperti gambar dibawah ini untuk merubah pandangan

pada viewport:

• Gunakan panel dibawah ini untuk mengganti tampilan viewport (Textured /Wireframe/

Textured-Wireframe). Silahkan dicoba satu persatu untuk mengetahui perbedaannya.

Sudah puas menambah objek-objeknya? Kalau begitu mari kita lanjutkan.

Sekarang coba anda tekan tombol play

Maka anda akan mendapati Game Viewport anda seperti ini:

Lho!? Kemana benda-benda yang tadi kita buat!?

Page 11: Tutorial Membuat Game Dengan Unity Part 1

11

Pencahayaan (Lighting)

Untuk menjawab pertanyaan pada halaman sebelumnya, mari kita kembali ke Scene Viewport.

Hentikan simulasi game dengan menekan kembali tombol Play.

• Setelah kembali ke Scene viewport, pilih GameObject > Create Other > Point Light

• Jika anda perhatikan, selain Point Light, terdapat pula pilihan Spotlight dan

Directional Light. Ya, mereka adalah sumber cahaya yang nantinya akan sangat

berpengaruh bagi game anda.

• Untuk mengatur karakteristik cahaya yang anda inginkan, pilih cahaya melalui panel

hierarchy.

• lalu coba anda perhatikan ke sebuah panel berjudul Inspector di sebelah kanan layar.

Page 12: Tutorial Membuat Game Dengan Unity Part 1

12

Panel Inspector adalah tempat untuk mengubah parameter objek pada Unity. Anda juga dapat

mengubahnya ketika dalam Game Viewport (ketika anda menekan tombol play ). Sehingga

mempermudah kita untuk mendapatkan settingan yang sesuai dengan keinginan kita (Tweaking).

Namun perlu diingat, jika anda ingin mengubah parameter sebuah objek secara permanen,

pastikan untuk tetap berada di dalam scene viewport. Mengubah parameter Inspector dalam

game viewport hanya bersifat sementara/preview.

Kembali ke lighting, setelah anda pilih cahaya, perhatikan kembali panel Inspector, lalu atur

parameter lighting tersebut sesuai seperti yang anda inginkan.

Type : Untuk mengganti tipe cahaya (Point Light, Spotlight dan Directional Light)

Color : Untuk mengubah warna cahaya

Attenuate : Pilihan apakah cahaya tersebut akan menyinari cahayanya secara

terbatas atau tak terbatas.

Intensity : Intensitas cahaya.

Range : Jarak penyinaran cahaya, hanya berguna jika Attenuate dipilih.

Spot Angle : Sudut penyinaran. Hanya berguna pada tipe cahaya Spotlight.

Shadows : Parameter bayangan (harus pakai Unity Pro).

Cookie : Jika anda ingin menggunakan texture gambar pada cahaya tersebut.

Draw Halo : Kesan “glow” pada cahaya tersebut.

Flare : Efek “mengkilat” pada cahaya. (dapat dilihat di game viewport)

Render Mode : Tingkat kualitas pantulan cahaya terhadap objek.

Culling Mask : Layer apa saja yang akan menerima pantulan cahaya tersebut

(akan dijelaskan nanti)

Catatan : Panel Inspector adalah tempat untuk mengubah parameter semua jenis benda pada

Unity. Namun tidak akan dijelaskan satu persatu secara mendetail pada bab ini. Seiring berjalannya

tutorial ini, anda akan sedikit demi sedikit memahami lebih jauh tentang panel Inspector.

Tips :

Ada dua jenis cahaya di Unity, yaitu Object Light dan Ambient Light. Object Light seperti yang telah

dijelaskan adalah cahaya yang kita buat melalui game object. Sedangkan Ambient Light adalah

cahaya dasar suatu scene. Untuk memahaminya lebih jauh, mari kita bahas sedikit.

• Coba anda pilih Edit > Render Setting, lalu perhatikan ke panel Inspector.

• Lalu coba anda ubah warna dari ambient Light dan perhatikan efeknya.

Page 13: Tutorial Membuat Game Dengan Unity Part 1

13

• Jika anda sudah puas mengatur cahayanya, sekarang coba tekan kembali tombol play.

• gunakan mouse untuk mengubah pandangan, keyboard W,S,A,D atau ↑↑↑↑,↓↓↓↓,←←←←,→→→→ untuk

bergerak mundur, kiri atau kanan, SPACE untuk melompat.

• Jangan lupa save scene anda, gunakan Ctrl-S atau pilih File > Save Scene, lalu pilih

nama yang anda inginkan.

Catatan : Jika anda berencana akan membuat banyak level/scene, ada baiknya anda membuat

folder baru di dalam folder project Unity anda untuk mempermudah pengelolaan file.

Contoh; save scene anda dalam folder baru yang diberi nama “Levels”. Sesuai selera anda.

Selamat!! Anda telah berhasil membuat sebuah game FPS! Namun belum sesuai dengan

namanya (First Person Shooter), maka di halaman selanjutnya kita akan membuat sebuah

“shooter” sederhana.

Page 14: Tutorial Membuat Game Dengan Unity Part 1

14

Pistol Sederhana

Mari kita lanjutkan dengan tahap berikutnya, disini kita akan menambahkan sebuah pistol sederhana.

Bersiap-siaplah, karena disini kita akan mempelajari dasar-dasar penggunaan script pada Unity.

Pertama-tama, mari kita buat sebuah pistol “abal-abal”.

• Buat sebuah cube, lalu ubah sedemikian rupa dengan menggunakan Scale(skala) atau

panel Inspector sehingga berbentuk persegi panjang.

• Ganti nama cube tersebut menjadi “Pistol”. Jangan lupa tekan Enter setelah mengganti

nama.

Catatan : Usahakan untuk mengikuti penamaan objek sesuai dengan tutorial ini. Karena penamaan

tersebut selanjutnya akan dipergunakan pada Script untuk mempermudah anda dalam proses

belajar. Dan perlu diingat, huruf besar dan kecil sangat diperhitungkan dalam Scripting.

• Posisikan pistol kita agar menempel dengan First Person Controller, dan searah

dengan sudut pandang kameranya. Seperti gambar di bawah ini.

• Lalu pindahkan objek Pistol ke dalam objek First Person Controller pada panel

hierarchy.

Page 15: Tutorial Membuat Game Dengan Unity Part 1

15

• Ketika ditanya “losing prefab…are you wish to continue?” pilih continue.

• Maka sekarang objek pistol tersebut telah menjadi satu kesatuan dengan objek First

Person Controller.

• Sehingga jika kita play game kita sekarang, maka pistol kotak tersebut akan mengikuti

kemana kita pergi.

Namun apa yang terjadi? Meskipun mengikuti, si pistol ternyata tidak mengikuti gerakan kamera kita.

Untuk itu, mari kita lakukan langkah berikut.

• Pindahkan objek pistol ke dalam objek Main Camera di dalam FPController. Sehingga

si pistol kini bersatu dengan Main Camera.

• Sehingga tampilan Hierarchy menjadi seperti ini:

• Kita lihat hasilnya dengan menekan tombol play.

Page 16: Tutorial Membuat Game Dengan Unity Part 1

16

Peluru

Ya, sekarang pistol tersebut sudah mengikuti gerakan kamera. Selanjutnya kita buat agar pistol kita

dapat menembaki sebuah peluru.

• Buat sebuah Game Object berupa Sphere(bola). Taruh dimana saja.

• Ganti nama Sphere tersebut menjadi “Peluru”

• Berikan ukuran yang rasional pada peluru tersebut sesuai dengan ukuran pistol.

• Selanjutnya, dalam keadaan objek peluru tersebut terpilih, pilih Component > Physics

> Rigidbody.

Sehingga peluru tersebut kini memiliki properti Rigidbody pada panel Inspector.

Page 17: Tutorial Membuat Game Dengan Unity Part 1

17

Rigidbody adalah komponen yang memberikan efek gravitasi pada sebuah objek. Objek yang diberi

komponen Rigidbody akan memiliki efek benda dinamis yang akan terpengaruh gravitasi sesuai

dengan parameternya. Rigidbody juga akan dapat saling berinteraksi dengan objek lain yang juga ber

komponen Rigidbody.

• Selanjutnya, pilih Create > Prefab.

• Ganti nama Prefab baru “new prefab” menjadi peluruPrefab.

• Pindahkan objek Peluru dari panel Hierarchy ke

peluruPrefab di panel Project.

• Hapus objek peluru yang ada di panel Hierarchy. Kita sudah tidak membutuhkannya lagi.

Scripting Dasar

Untuk sementara kita tinggalkan dulu pistol dan peluru tersebut. Selanjutnya mari kita mulai proses

scripting untuk pistol dan pelurunya.

• pada panel Project, pilih Create, lalu pilih Folder.

Page 18: Tutorial Membuat Game Dengan Unity Part 1

18

• Maka akan muncul sebuah New Folder di dalam panel project.

• Pilih New Folder tersebut, lalu klik sekali lagi. Ganti namanya menjadi “Java Script”

• Lalu klik kanan folder Java Script tersebut, dan pilih Create > JavaScript

• Maka akan muncul NewBehaviourScript, ini adalah script kosong baru. Genti namanya

menjadi “PistolScript”.

• Klik dua kali (double click) PistolScript tersebut.

Setelah double click, maka sebuah windows baru akan muncul. Ini adalah Unity Script windows.

Jika anda memang berencana akan berurusan dengan Unity dalam waktu panjang ini, maka anda

akan menghabiskan banyak waktu bersuka duka disini. Cry tear of joy!! >:D

Seperti yang anda lihat, script kosong hanya berisi function Update () {}

• Hapus semua script tersebut, lalu copy paste script di bawah ini ke dalamnya:

var peluru : Rigidbody; var kecepatan = 20; function Update () { if (Input.GetButtonDown ("Fire1")) { var peluruBaru : Rigidbody = Instantiate (peluru, transform.position,transform.rotation); peluruBaru.velocity = transform.TransformDirection(Vector3 (0,0,kecepatan)); Physics.IgnoreCollision(peluruBaru.collider, transform.root.collider); } }

• save script tersebut.

Page 19: Tutorial Membuat Game Dengan Unity Part 1

19

Catatan : Di tutorial ini tidak akan dijelaskan secara spesifik mengenai script yang diberikan. Jika

anda ingin mengetahui lebih jauh mengenai scripting di Unity, silahkan merujuk ke Help > Scripting

Manual. Atau lakukan penelitian lewat komunitas maupun forum-forum Unity di internet. Banyak

pengguna Unity dari penjuru dunia yang secara aktif sharing script yang mereka buat.

Sekarang mari kita kembali ke pistol dan peluru kita.

Sebelum mengaplikasikan script yang baru saja kita buat, mari kita lakukan terlebih dahulu langkah-

langkah berikut ini;

• pilih GameObject > Create Empty

Empty Game Object adalah sebuah objek yang meskipun kosong namun berguna sebagai point

master suatu objek. dalam kasus ini, Empty Game Object tersebut akan menjadi tempat dimana

peluru ditembakkan.

• Ganti nama Game Object kosong tersebut menjadi “Pistol Tembak”

• Pindahkan Game Object Pistol Tembak sehingga bersatu dengan object Pistol

• Atur posisinya sehingga berada di ujung Pistol. Pastikan agar sedikit berada di luar

objek pistol.

• Drag & drop script PistolScript ke dalam objek Pistol Tembak

Page 20: Tutorial Membuat Game Dengan Unity Part 1

20

Sekarang pilih objek Pistol Tembak, lalu perhatikan ke panel Inspector.

Dapat kita lihat, kini ada parameter tambahan pada objek Pistol Tembak. Parameter ni merupakan

hasil aplikasi Java Script PistolScript.

• Selanjutnya, dengan tetap memilih objek Pistol Tembak, drag & drop peluruPrefab

dari panel Project ke slot Peluru pada panel inspector objek Pistol Tembak.

• tekan Play (Gunakan klik kiri atau keyboard Ctrl-kiri anda untuk menembak).

Page 21: Tutorial Membuat Game Dengan Unity Part 1

21

Efek Ledakan

Sekarang pistol kita sudah dapat menembakkan peluru. Selanjutnya mari kita tambahkan efek

ledakan pada peluru yang ditembakkan.

• Buat Java Script baru bernama “Ledakan”

• Copy paste script di bawah ini

var ledakan : GameObject; function OnCollisionEnter (collision : Collision) { var kontak : ContactPoint = collision.contacts[0]; var rotasi = Quaternion.FromToRotation(Vector3.up, kontak.normal); var ledakanBaru : GameObject = Instantiate (ledakan, kontak.point, rotasi); Destroy(gameObject); }

• Pilih peluruPrefab pada panel project.

• Pilih Component > Scripts > Ledakan

Sekarang prefab peluruPrefab telah memiliki parameter “Ledakan” hasil dari script di atas.

Page 22: Tutorial Membuat Game Dengan Unity Part 1

22

• Dengan peluruPrefab tetap terpilih, buka folder Standard Assets di panel Project,

lalu pilih Particles.

• pindahkan prefab explosion dari panel project ke slot Ledakan di Inspector

peluruPrefab.

Prefab explosion ini adalah efek template dari Unity.

Sekarang mari kita coba hasilnya. Tekan Play

Peluru yang dilontarkan kini menghasilkan efek ledakan ketika bersentuhan dengan objek lain. Jika

anda mengalami kasus peluru meledak sebelum dilontarkan, pastikan objek Pistol Tembak tidak

bersentuhan dengan objek Pistol.

Page 23: Tutorial Membuat Game Dengan Unity Part 1

23

Build

Untuk tahap akhir mari kita Build game kita sehingga menjadi sebuah game yang “standalone”

• Save project dan scene anda

• Pilih File > Build Setting

• Pilih Add Current

• Ganti menjadi Windows Standalone.

• Pilih Build

• Beri nama lalu save di tempat yang anda inginkan

Page 24: Tutorial Membuat Game Dengan Unity Part 1

24

Kesimpulan

Jika tutorial ini kita singkat dengan sebuah gambar, maka kurang lebih dapat diperoleh kesimpulan

seperti ilustrasi dibawah ini:

Page 25: Tutorial Membuat Game Dengan Unity Part 1

25

Demikian Tutorial Membuat Game Dengan Unity Part 1 (dasar)

berakhir. Selanjutnya, silahkan anda bereksperimen dengan apa yang

sejauh ini telah anda pelajari. Cari tutorial atau resource lain melalui

internet. Atau silahkan tunggu kehadiran Part 2 Tutorial ini.

Di Tutorial Part 2 direncanakan akan membahas :

• 3rd person game tutorial

• Integrasi Unity dengan Program 3D

• Animasi karakter

• Kontrol karakter

• Simple AI (Artificial Intelligence) & waypoint

• GUI system

Berhubung ini adalah tutorial pertama yang saya buat, mohon maaf

jika ada kesalahan penulisan, atau segala kekurangan dalam tutorial

ini. Sampai jumpa di tutorial part 2, & Happy game making! :)

Vadi Vanadi Buchari

[email protected]