pelatihan game development

32
PENGENALAN GAME DEVELOPMENT MENGGUNAKAN UNITY 3D GAME ENGINE LCEN Himatektro ITS Surabaya Halaman 1 Daftar Isi Daftar Isi 1 Penting dibaca 2 Into Game-Dev 3 Apa itu Unity 3D 4 First Project : 3D First Person 9 1. Membuat Dataran (Terrain) 9 2. Character Controller 11 3. First Object : Wall 13 4. Insert Texture 14 5. First Script 17 6. Animating Object 20 7. Game Atribute 24 8. Lighting Effect 27 9. Skyboxes 29 What’s Next 31 Daftar Pustaka 32

Upload: abdillah-amiruddin

Post on 26-Jul-2015

643 views

Category:

Documents


13 download

TRANSCRIPT

Page 1: Pelatihan Game Development

PENGENALAN GAME DEVELOPMENT MENGGUNAKAN UNITY 3D GAME ENGINE

L C E N – H i m a t e k t r o I T S S u r a b a y a

Halaman 1

Daftar Isi

Daftar Isi 1

Penting dibaca 2

Into Game-Dev 3

Apa itu Unity 3D 4

First Project : 3D First Person 9

1. Membuat Dataran (Terrain) 9

2. Character Controller 11

3. First Object : Wall 13

4. Insert Texture 14

5. First Script 17

6. Animating Object 20

7. Game Atribute 24

8. Lighting Effect 27

9. Skyboxes 29

What’s Next 31

Daftar Pustaka 32

Page 2: Pelatihan Game Development

PENGENALAN GAME DEVELOPMENT MENGGUNAKAN UNITY 3D GAME ENGINE

L C E N – H i m a t e k t r o I T S S u r a b a y a

Halaman 2

Penting Dibaca

Sebelum anda melangkah lebih lanjut kedalam tutorial ini, sangat dianjurkan

agar anda membaca bagian ini terlebih dahulu agar tidak timbul kebingungan

dalam diri anda nantinya.

1. Tujuan dari tutorial ini adalah untuk mengenalkan tentang Game-

Development dan penggunaan UNITY 3D game engine. Sehingga

tutorial ini lebih tepat untuk kalangan pemula yang ingin belajar.

2. Yang anda dapatkan dengan mengikuti pelatihan ini nantinya adalah :

a) Mengerti apa itu game-development.

b) Mengerti dasar-dasar dari interface UNITY 3D.

c) Dapat mengoperasikan UNITY 3D secara umum.

d) Membuat game 3D FPS sederhana.

3. Jangan sungkan dan malu untuk menghubungi saya atau instruktur

yang ada apabila anda mengalami kesulitan atau ingin bertanya.

4. Saya, instruktur yang hadir, serta seluruh panitia tidak akan

bertanggung -jawab atas apa yang anda lakukan dan penyalah-gunaan

pelatihan maupun tutorial ini.

5. Tutorial ini bersifat terbuka, anda dapat menyebarkan atau bahkan

menyempurnakannya di kemudian hari jika berkenan, namun tidak

untuk komersial.

Page 3: Pelatihan Game Development

PENGENALAN GAME DEVELOPMENT MENGGUNAKAN UNITY 3D GAME ENGINE

L C E N – H i m a t e k t r o I T S S u r a b a y a

Halaman 3

Into Game-Dev

Saya mengasumsikan anda sekalian adalah orang yang masih belum awam

dengan game development dan baru saja memasukinya untuk belajar, oleh

karenanya sedikit pengantar tentang game development mungkin anda

butuhkan.

Game berdasar pada imajinasi, sebuah dunia yang penuh dengan kreatifitas.

Game adalah sebuah produk seni, sama seperti anda membuat sebuah

gambar dengan menggunakan Corel Draw, video dengan menggunakan

Movie Maker, atau sekedar meng-edit foto dengan menggunakan Adobe

Photoshop. Oleh karenanya untuk membuat game yang anda butuhkan hanya

dua : imajinasi dan sedikit pengetahuan penggunaan tool dan Unity 3D adalah

tool utama yang nantinya akan anda gunakan dalam mengembangkan

imajinasi anda.

Tentunya anda sudah sering kali bermain game, mulai dari game terbaru dan

umum seperti Counter Strike, Warcraft, Need for Speed, Elder Scroll, dll

hingga game klasik masa kanak-kanak seperti Mario Bros, Zelda, Megaman,

dll. Bagi anda yang sudah biasa memainkan banyak game tentunya sudah

tahu banya macam-macam genre game, beberapa genre game yang umum

beredar saat ini antara lain RPG (Role Playing Game), FPS (First Action

Shooter), Sports, Racing, RTS (Real Time Strategy), Third Person, Arcade,

dan MMO (Massively Multiplayer Online). Namun terlepas dari genre tersebut,

game terbagi menjadi 2 macam berdasarkan platformnya yaitu 2D dan 3D,

yang nantinya akan anda akan mendapatkan kesempatan mencoba membuat

dalam platform 3D.

Kembali tentang game development, pengembangan sebuah game tidaklah

dilakukan oleh perseorangan, namun dilakukan oleh sebuah tim. Jika anda

berkesempatan menamatkan sebuah game atau membuka bagian “About”

maka biasanya anda akan melihat sederetan nama yang merupakan

kontributor dalam pengembangan hingga pemasaran game tersebut.

Umumnya terdapat 5 elemen utama dalam pengembangan game, yaitu

produser, game designer, proggrammer, art designer, audio designer.

Elemen ini dapat bertambah sesuai dengan kebutuhan juga menyesuaikan

dengan ketersediaan dana, biasanya semakin besar skala gamenya maka

semakin banyak juga elemen yang dibutuhkankan.

Demikian adalah sedikit pengantar mengenai game development, sebelum

kita benar-benar masuk kedalam pelatihan ini, saya akan terlebih dahulu

mengajak anda untuk mengenal tool yang akan kita gunakan sealama

pelatihan ini, yakni Unity 3D.

Page 4: Pelatihan Game Development

PENGENALAN GAME DEVELOPMENT MENGGUNAKAN UNITY 3D GAME ENGINE

L C E N – H i m a t e k t r o I T S S u r a b a y a

Halaman 4

Apa itu Unity 3D

Unity adalah sebuah tool game development, yang juga dapat dikatakan

sebagai sebuah “game engine” yang artinya project dari Unity ini akan

di”assembly” menjadi sebuah game (Corel Draw, Blender, dll juga dapat

dikatan tool game development namun bukan game engine). Unity terkenal

karena kemudahan, fleksibilitas dan kekuatannya dalam membuat sebuah

game, dikatakan mudah karena interfacenya yang ringan dan mudah

dipahami hingga membuat orang yang baru belajar sekalipun akan langsung

mampu membuat sebuah game sederhana, dikatakan fleksibel karena anda

akan dapat menuangkan kreatifitas anda semaksimal mungkin secara unity

mendukung banyak mode dan platform, dikatan kuat karena dengan engine

yang digunakan Unity mampu menghasilkan sebuah game yang “rumit/berat”

baik secara visual, kompleksitas, dan juga konten yang diusung. Beberapa

game yang mungkin anda kenal yang dibuat menggunakan Unity antara lain

adalah “Need for Speed World”, “Battlestar Galactica Online”, “Drift Mania

Championship”, “Dungeon Empires”, “Tiger Woods PGA”, dll. Selain itu juga

terdapat beberapa studio yang menggunakan unity sebagai salah satu game

engine antara lain adalah “Electronic Arts”, “GLU Mobile”, “Marvel Studio”,

“Niclodeon”, dll. Ini membuktikan bahwa Unity 3D merupakan tool yang

handal.

Unity 3D mendukung banyak sekali platform, tidak hanya untuk desktop,

namun juga untuk IoS, Android, Wii, dan lainnya.unity juga dapat mengimport

banyak format untuk membantu anda dalam mendevelop game, antara lain

adalah Maya, 3DMax, Blender, City Engine, Filter Forge, dll.

Gambar 1 : Unity 3D ketika pertama dijalankan

Page 5: Pelatihan Game Development

PENGENALAN GAME DEVELOPMENT MENGGUNAKAN UNITY 3D GAME ENGINE

L C E N – H i m a t e k t r o I T S S u r a b a y a

Halaman 5

Gambar 2 : halaman awal Unity 3D

Masuk kedalam interface, unity memiliki 4 area utama dan 3 menu bar,

seperti terlihat pada gambar 2, dengan penjelasan sebagai berikut :

Nomor 1 : Scene/Game/Animation

Scene adalah area dimana game anda dibuat, area ini digunakan unuk

membuat dan menaruh objek serta memanipulasinya, dibagian pojok kanan

atas adalah tools untuk mengatur view/sudut pandang dari desain anda

secara default (sumbu x, y, atau z). Pengendalian area ini menggunakan

mouse klik kiri untuk memilih/memblok objek, klik kanan untuk memutar view

secara random, klik tengah untuk menggeser view, dan scroll untuk men-

zoom in dan out.

Game adalah area dimana anda dapat melihat game yang anda buat ketika

dijalankan walaupun belum game anda belum selesai. Erat kaitannya dengan

menu bar yang dikotak biru, akan dijelaskan selanjutnya.

Animation adalah area yang sesuai namanya dimana anda membuat animasi

dari game (objek dalam game lebih tepatnya) yang anda buat sebelumnya di

area scene.

Nomor 2 : Hierarchy

Hierarchy adalah area dimana seluruh objek yang berada dalam area Scene

tertulis, objek yang tertulis di dalam area hierarchy dapat disortir sesuai

dengan kebutuhan dan kemudahan anda. Area hierarchy berhubungan erat

dengan area Project.

Page 6: Pelatihan Game Development

PENGENALAN GAME DEVELOPMENT MENGGUNAKAN UNITY 3D GAME ENGINE

L C E N – H i m a t e k t r o I T S S u r a b a y a

Halaman 6

Nomor 3 : Project

Project adalah area dimana seluruh asset yang anda imporkan kedalam unity

ketika membuat projek baru, seperti sebuah perpustakaan, semua objek,

script, texture, dan yang lainnya berada dan ketika anda membutuhkannya

anda hanya perlu memanggilnya. Area Project berhubungan erat dengan

area Hierarchy karena proses pemanggilan objek terjadi ketika anda men-

drag objek yang berada di area Project kearah area Hierarchy, dengan

demikian objek akan muncul di area Scene.

Nomor 4 : Inspector

Inspector adalah area dimana objek yang sedang aktif (disorot) baik itu yang

berada di area Scene, Hierarchy, maupun Project akan ditampilkan

keterangannyanya sehingga bisa di-edit. Editing ini umumnya meliputi

atribut, texture, dan yang paling sering adalah scriptnya.

note :

untuk perlu diketahui terlebih dahulu, bahasa pemrograman yang dikenali Unity ada

tiga : C#, Java, dan Phyton. Dalam tutorial ini bahasa yang akan digunakan adalah

Java.

Selain 4 area, juga terdapat 3 menu bar yang memiliki fungsinya masing-

masing yang mana penjelasannya adalah sebagai berikut :

Menu bar 1 :

Nomor 1 : Berfungsi untuk menggerakan field of view secara bebas.

Nomor 2 : Berfungsi untuk memindahkan/menggerakkan objek.

Nomor 3 : Berfungsi untuk memutar objek.

Nomor 4 : Berfungsi untuk memperbesar/memperkecil objek.

Fungsi dari nomor 2-3 dapat digunakan secara 3 dimensi.

Menu bar 2 :

Merupakan menu bar utama yang memiliki banyak fungsi sesuai dengan

kategorinya, misalkan “GameObject” berfungsi untuk membuat objek game,

“Terrain” berfungsi untuk membuat sebuah lahan dan pengaturannya,

“Component” berfungsi untuk memunculkan komponen tambahan dan

pengaturan yang belum ter-include dalam objek, dll.

1 2 3 4

Page 7: Pelatihan Game Development

PENGENALAN GAME DEVELOPMENT MENGGUNAKAN UNITY 3D GAME ENGINE

L C E N – H i m a t e k t r o I T S S u r a b a y a

Halaman 7

Menu bar 3 :

Tentunya anda sudah tidak asing lagi dengan ketiga lambang tersebut, yakni

“Play”, “Pause”, dan “Forward”. Dan seperti yang anda pikirkan, fungsi

ketiganya adalah untuk menjalankan dan mencoba game yang anda buat.

Ketika anda menekan “Play”, secara otomatis area “Scene” akan berpindah

ke “Game”.

Setelah anda mulai mengenal sedikit interface awal dari unity cobalah

terlebih dahulu sebelum anda memulai lebih jauh hingga anda terbiasa,

terutama bagi anda yang masih belum terbiasa dengan aplikasi desain 3

dimensi. Anda juga dapat mencoba sebuah game bonus bernama “Angry-

Bots” (jika anda meng-install unity versi terbaru), anda dapat memainkan dan

meng-editnya sesuka anda. Nah, jika anda merasa sudah cukup terbiasa

maka kita akan lanjutkan dengan membuat sebuah project baru.

Pertama-tama masuklah ke menu bar “File”->kemudian pilih “New Project”

(bukan New Scene), akan muncul jendela seperti dibawah, untuk saat ini pilih

saja “Don’t Save”.

Gambar 3 : Jendela baru yang muncul

Kemudian akan muncul jendela “Project Wizard” seperti dibawah, pada

bagian “Project Location” masukkan alamat tempat anda ingin menyimpan

game anda beserta nama game anda (dalam hal ini sama memilih nama “first

game”), kemudian pada bagian “Import the following packges” untuk saat ini

beri tanda centang pada seluruh kotak yang tersedia, kedepannya anda

dapat memilih sendiri sesuai kebutuhan anda “package” yang ingin anda

gunakan. Package berisi “paket-paket” objek dan atributnya yang nantinya

anda butuhkan dalam membangun sebuah game.

Page 8: Pelatihan Game Development

PENGENALAN GAME DEVELOPMENT MENGGUNAKAN UNITY 3D GAME ENGINE

L C E N – H i m a t e k t r o I T S S u r a b a y a

Halaman 8

Gambar 4 : Jendela ”Project Wizard”

Setelah itu Unity akan menutup dirinya sendiri dan memuat seluruh

“packages” yang sebelumnya anda pilih kemudian membuka kembali, proses

ini akan memakan waktu cukup lama sehingga anda cukup sabar menunggu.

Setelah beberapa saat maka anda akan mendapatkan jendela baru sebagai

berikut.

Gambar 5 : Jendela baru

Berikutnya anda akan memasuki lebih jauh kedalam game pertama anda.

Page 9: Pelatihan Game Development

PENGENALAN GAME DEVELOPMENT MENGGUNAKAN UNITY 3D GAME ENGINE

L C E N – H i m a t e k t r o I T S S u r a b a y a

Halaman 9

First Project 3D : First Person

Dalam project pertama ini anda akan membuat sebuah game 3D sederhana

dengan menggunakan sudut pandang orang pertama. Skenario dalam game

ini adalah anda tersesat berada dalam sebuah labirin (maze) dimana anda

harus mencari jalan keluar, namun jalan keluar ini tidak akan terbuka tanpa

anda mencari 7 kunci yang tersebar secara acak dalam labirin tersebut.

Untuk itu yang pertama-tama anda butuhkan adalah sebuah dataran(terrain),

langsung saja masuk ke menu bar “Terrain”->”Create Terrain” maka

kemudian muncullah dataran yang anda butuhkan, ukurannya mungkin

terlalu besar sehingga anda dapat mengecilkannya dengan masuk ke menu

bar “Terrain”->”Set Resolution” sehingga akan muncul jendela berikut, disini

saya men-set panjang dan lebar dari terrainnya menjadi 150.

Gambar 6 : Set Resolution

Setelah anda memiliki sebuah dataran, yang perlu anda lakukan adalah

mengecat dataran anda dengan sebuah texture tertentu, yang perlu anda

lakukan adalah lihat pada area “Inspector”->”Terrain Script”->klik pada

tombol “Paint Texture”(yang di highlight). Setelahnya klik pada bagian “Edit

Texture”->”Add Texture”, kemudian akan muncul sebuah jendela “Add

Terrain Texture”, klik pada tanda o dibagian kanan dari “Splat”, disini

terdapat banyak sekali texture yang dapat anda gunakan, anda dapat memilih

dengan bebas, disini saya akan menggunakan “Grass (Meadows)”.

Page 10: Pelatihan Game Development

PENGENALAN GAME DEVELOPMENT MENGGUNAKAN UNITY 3D GAME ENGINE

L C E N – H i m a t e k t r o I T S S u r a b a y a

Halaman 10

Gambar 7 : Paint Texture

Gambar 8 : Add Terrain Texture

Gambar 9 : Dataran setelah diberi texture

Page 11: Pelatihan Game Development

PENGENALAN GAME DEVELOPMENT MENGGUNAKAN UNITY 3D GAME ENGINE

L C E N – H i m a t e k t r o I T S S u r a b a y a

Halaman 11

Setelah anda memiliki dataran, anda dapat memasukkan “Character

Controllers”. Character Controllers adalah (seperti namanya) pengontrol

karakter yang merupakan bawaan dari Unity, dan sudah merupakan

pengontrol yang hebat bahkan tanpa anda tambahkan script sekalipun,.

Langsung saja, pada area Project->Standart Assets->Character Controllers->

drag prefab “First Person Controller” ke area Hierarchy.

Gambar 9 : Memasukan First Person Controller kedalam game

Segera setelah anda memiliki karakter First Person, anda dapat langsung

mencoba game anda dengan menekan Play pada menu bar. Secara default,

kontrol karakternya adalah tombol tanda panah atau ASWD dengan spasi

untuk melompat.

Page 12: Pelatihan Game Development

PENGENALAN GAME DEVELOPMENT MENGGUNAKAN UNITY 3D GAME ENGINE

L C E N – H i m a t e k t r o I T S S u r a b a y a

Halaman 12

Gambar 10 : Menjalankan game untuk pertama kali

Setelah anda mencoba menjalankan karakter anda, elemen berikutnya yang

anda butuhkan adalah labirin yang terbuat dari kumpulan dinding. Disini saya

akan membuat dinding pertama dengan ukuran 150x5x1. Untuk merubah

ukuran anda cukup meng-aktifkan objek (dengan cara mengkliknya), lalu

pada area Inspector->Scale rubah nilai dai variabel X, Y, dan Z.

Dinding ini saya posisikan sebagai pembatas luar dari daratan permainan

dengan yang bukan daratan agar karakter tidak terjatuh.

Page 13: Pelatihan Game Development

PENGENALAN GAME DEVELOPMENT MENGGUNAKAN UNITY 3D GAME ENGINE

L C E N – H i m a t e k t r o I T S S u r a b a y a

Halaman 13

Gambar 10 : Menjalankan game untuk pertama kali

Karena diposisikan sebagai pembatas luar, maka saya membutuhkan 4 buah

dinding yang sama dengan klik kanan pada objek di area Hierarchy-

>Duplicate. Setelahnya, saya me-rename dinding ini dari Cube menjadi

“Dinding pembatas luar” agar nantinya tidak rancu. Kemudian untuk

memudahkan pengaturan, pada area Hierarchy saya sortir menjadi lebih

ringkas seperti berikut dengan cara men-dragnya masuk satu-persatu.

Gambar 11 : Membuat 4 dinding pembatas luar

Page 14: Pelatihan Game Development

PENGENALAN GAME DEVELOPMENT MENGGUNAKAN UNITY 3D GAME ENGINE

L C E N – H i m a t e k t r o I T S S u r a b a y a

Halaman 14

Gambar 11 : Men-sortir area Hierarchy

Setelah anda memiliki dinding, akan kurang realistis apabila dindingnya

hanya terdiri dari waarna yang solid, oleh karenanya anda dapat

memasukkan texture kedalamnya, dengan cara meng-aktifkan objek-> pada

bagian Inspector->”Mesh Renderer”->”Materials”->klik pada tanda o.

Gambar 12 : Memasukkan texture kedalam objek

Tentunya karena unsur utama dalam game ini adalah labirin, maka anda perlu

membuat labirin, dengan menggunakan cara yang sama anda membuat

dinding pembatas luar diatas. Sesuaikan dengan krativitas anda. Labirin hasil

buatan saya adalah sebagai berikut, dimana pojok kiri bawah merupakan

tempat start dan pojok kanan atas merupakan tempat finish.

Page 15: Pelatihan Game Development

PENGENALAN GAME DEVELOPMENT MENGGUNAKAN UNITY 3D GAME ENGINE

L C E N – H i m a t e k t r o I T S S u r a b a y a

Halaman 15

Gambar 13 : Labiri akhir

Anda telah memiliki labirin, selanjutnya sesuai dengan tujuan dari game ini,

anda memerlukan 7 buah kunci yang anda letakkan secara acak di labirin

tersebut.

Pertama-tama membuat sebuah kunci, buat sebuah objek sembarang dan

anggaplah itu adalah sebuah kunci dengan cara yang sama anda membuat

objek-objek sebelumnya dan jangan lupa diberi nama agar tidak rancu (disini

saya beri nama “cratekey”).

Setelah anda membuat kunci, duplikat hingga menjadi 7, kemudian

tempatkan secara random di labirin.

Page 16: Pelatihan Game Development

PENGENALAN GAME DEVELOPMENT MENGGUNAKAN UNITY 3D GAME ENGINE

L C E N – H i m a t e k t r o I T S S u r a b a y a

Halaman 16

Gambar 14 : Kunci untuk membuka gerbang

Selanjutnya adalah membuat agar karakter anda dapat mengambil kunci,

untuk itu dibutuhkanlah script. Cara membuat scrip adalah dengan meng-klik

tanda “Create” pada area Project->JavaScript (dalam tutorial ini

menggunakan bahasa java). Kemudian beri nama “ambil-kunci”, lalu klik

dobel hingga muncul jendela “Mono Develop”, lalu tuliskan script sebagai

berikut.

Page 17: Pelatihan Game Development

PENGENALAN GAME DEVELOPMENT MENGGUNAKAN UNITY 3D GAME ENGINE

L C E N – H i m a t e k t r o I T S S u r a b a y a

Halaman 17

Gambar 15 : Membuat script dan jendela MonoDevelop

Scriptnya :

static var NUMBER_KEY = 0; function OnControllerColliderHit(hit :ControllerColliderHit) { if (hit.gameObject.tag == "cratekey") { //menghilangkan cratekey Destroy(hit.gameObject); NUMBER_KEY ++; GameObject.Find("g_keytext").guiText.text = ""+NUMBER_KEY; } }

Secara umum script diatas ini berfungsi untuk menghancurkan objek dengan

tag “cratekey” ketika bersentuhan (ColliderHit), dan dipasang pada karakter

Page 18: Pelatihan Game Development

PENGENALAN GAME DEVELOPMENT MENGGUNAKAN UNITY 3D GAME ENGINE

L C E N – H i m a t e k t r o I T S S u r a b a y a

Halaman 18

(OnController), pada baris berikutnya terdapat script yang berfungsi untuk

menghitung jumlah key yang sudah diambil dan ditampilkan pada layar

(“g_keytext”.guiText.text=””+NUMBER_KEY pembahasan mengenai

guiText ini akan ada pada bagian berikutnya), semua yang saya beri highlight

dapat anda beri nama sesuka anda namun anda harus mengingatnya karena

akan sangat dibutuhkan nantinya . Sehingga ketika anda mengambil kunci

maka secara otomatis kunci akan hilang dan dilayar muncul angka yang akan

terus bertambah seiring anda mengambil kunci.

Selesai dengan script saatnya anda mengimplementasikan script ini kedalam

objek anda, seperti yang telah sedikit dijelaskan diatas bahwa script ini

dipasang pada karakter (OnController) maka anda perlu memasangnya pada

karakter, caranya adalah aktifkan karakter anda dengan meng-kliknya->

kemudian drag file scriptnya (disini saya beri nama “a_ambilkey”) ke area

Inspector dari objek karakter.

Gambar 16 : Memasukkan script kedalam karakter.

Anda telah memiliki script, namun jangan lupa, script ini hanya bekerja

dengan objek yang memiliki tag “cratekey”. Oleh karenanya pada objek kunci

perlu anda beri tag, caranya aktifkan objek key anda dengan cara diklik->

kemudian pada area Inspector tepat dibawah nama objek ada kolom Tag->

klik dan pilih “Add Tag”->pilih pada “Tags”->pada “Elemen 0” masukkan

nama dari tag yang anda sebelumnya buat pada script (disini saya

menggunakan nama tag “cratekeey”)->setelahnya anda kembali pada kolom

tag->pilih “cratekey”(yang diinputkan sebelumnya).

Page 19: Pelatihan Game Development

PENGENALAN GAME DEVELOPMENT MENGGUNAKAN UNITY 3D GAME ENGINE

L C E N – H i m a t e k t r o I T S S u r a b a y a

Halaman 19

Gambar 17 : Memasukkan tag kedalam objek

Setelah selesai anda dapat mencoba memainkan game anda untuk

mengetahui apakah scriptnya sudah berjalan atau tidak.

Sekarang setelah anda memiliki labirin dan kunci untuk membuka pintunya

selanjutnya adalah membuat pintunya terbuka apabila aanda telah

mendapatkan 7 kunci. Caranya adalah dengan masuk ke area Animation (jika

tidak ada anda dapat membuat tab baru dengan mng-klik tanda di pojok

kanan atas->add tab->animation).

Page 20: Pelatihan Game Development

PENGENALAN GAME DEVELOPMENT MENGGUNAKAN UNITY 3D GAME ENGINE

L C E N – H i m a t e k t r o I T S S u r a b a y a

Halaman 20

Gambar 18 : Memuat area animation

Setelah itu anda dapat membuat animasi baru dengan cara mengaktifkan

pintu keluar->klik pada sudut tengah atas area Animation->pilih “Create New

Clip”.

Gambar 19 : Membuat animasi 1

Akan muncul jendela “Create ew Animation”, beri nama “pintu_otomatis”->

langsung klik ok.

Page 21: Pelatihan Game Development

PENGENALAN GAME DEVELOPMENT MENGGUNAKAN UNITY 3D GAME ENGINE

L C E N – H i m a t e k t r o I T S S u r a b a y a

Halaman 21

Gambar 20 : Membuat animasi 2

Dalam animasi ini pintuk akan dibuat membuka secara otomatis, untuk itu

tekan tanda berikut, tanda ini berfungsi untuk memulai membuat animasi.

Segera setelahnya klik pada bagian seperti pada gambar->add key. Ini

berfungsi untuk membuat penanda pada objek yang akan dianimasikan. Atur

pada bagian “Position”.

Page 22: Pelatihan Game Development

PENGENALAN GAME DEVELOPMENT MENGGUNAKAN UNITY 3D GAME ENGINE

L C E N – H i m a t e k t r o I T S S u r a b a y a

Halaman 22

Gambar 21 : Membuat animasi 3

Dapat anda lihat pada bagian yang dilingkari biru, ini merupakan bagian

timeline, pergerakan objek yang diatur setiap waktunya dalam satuan detik.

Bagi anda yang sudah terbiasa menggunakan aplikasi video editing atau flash

maka fungsinya persis seperti yang anda bayangkan. Untuk mengaturnya

anda dapat menggunakan scroll mouse untuk memperbesar/memperkecil

waktu timeline.

Setelah anda memasukkan key, geser waktu pada timeline hingga

menunjukan 0:30->lalu pada area Scene turunkan sedikit pintunya, ulangi

seterusnya hingga pintu turun seluruhnya (disini saya membutuhkan 3:00

untuk menurunkan pintu seluruhnya). Dan hilangkan tanda centang pada

tanda “Play Automatically” pada area Inspector.

Gambar 22 : Membuat animasi 4

Page 23: Pelatihan Game Development

PENGENALAN GAME DEVELOPMENT MENGGUNAKAN UNITY 3D GAME ENGINE

L C E N – H i m a t e k t r o I T S S u r a b a y a

Halaman 23

Sekarang anda telah memiliki sebuah pintu yang dapat otomatis terbuka,

yang perlu anda lakukan selanjutnya adalah membuat script yang membuat

dapat pintu terbuka apabila anda telah mengumpulkan 7 kunci. Buatlah

sebuah script baru (dengan cara yanga sama seperti sebelumnya) dan beri

nama “a_door”, kemudian tuliskan script seperti berikut.

Scriptnya :

function Update () { var hit : RaycastHit; if (Physics.Raycast(transform.position, Vector3(24.67453, 2.264201, -1.835431), hit, 30)) { if (a_ambilkey.NUMBER_KEY == 7) { hit.collider.gameObject.animation.Play("pintu_otomatis"); } } }

Anda dapat mencoba memainkan game anda untuk mengetahui apakah

scriptnya sudah bekerja atau belum. Jika sudah berhasil maka anda telah

mencapai akhir dari dari tutorial ini.

Berikutnya adalah membuat sebuah penanda jumlah kunci yang telah anda

dapatkan, untuk itu anda membutuhkan sebuah GUI Text, GUI Text adalah

text yang akan muncul dalam interface game dan tidak akan berubah

posisinya. Langsung saja pada area Hierarchy klik Create->GUI Text.

Page 24: Pelatihan Game Development

PENGENALAN GAME DEVELOPMENT MENGGUNAKAN UNITY 3D GAME ENGINE

L C E N – H i m a t e k t r o I T S S u r a b a y a

Halaman 24

Gambar 23 : Membuat GUI Text

Yang ini rubah namanya menjadi “Key_Obtained_Text”. Kemudian lihat pada

area Inspector->rubah atributnya menjadi seperti berikut.

Gambar 24 : Mem-edit GUI Text

Pada bagian “Text”, apapun yang anda ketikkan akan muncul sebagai text

yang ditampilkan, disini saya menuliskan kata “Key Obtained :”. Kemudian

pada bagian “Font Size” seperti yang anda temui pada aplikasi word

processor berfungsi untuk merubah ukuran font, ukuran awalnya terlalu kecil

jadi coba dibesarkan hingga 27 atau sesuka anda. Pada bagian “Font” juga

sama berfungsi untuk mengubah jenis font, namun disini tidak saya rubah,

jika anda ingin mengubahnya anda dapat langsung meng-klik untuk memilih

font, atau jika tidak ada pilihan font anda tinggal meng-import font yang anda

Page 25: Pelatihan Game Development

PENGENALAN GAME DEVELOPMENT MENGGUNAKAN UNITY 3D GAME ENGINE

L C E N – H i m a t e k t r o I T S S u r a b a y a

Halaman 25

inginkan. Setelah anda membuat perubahan maka tampilannya akan menjadi

seperti ini.

Gambar 25 : Mem-edit GUI Text 2

Berikutnya yang kita lakukan adalah menempatkan text tersebut di sudut kiri

atas dari jendela, untuk itu perhatikan bagian Transform dari area Inspector.

Gambar 26 : Mem-edit posisi GUI Text

Ubag menjadi sebagai berikut, atau sesuaikan dengan keinginan anda.

Gambar 27 : Mem-edit posisi GUI Text 2

Page 26: Pelatihan Game Development

PENGENALAN GAME DEVELOPMENT MENGGUNAKAN UNITY 3D GAME ENGINE

L C E N – H i m a t e k t r o I T S S u r a b a y a

Halaman 26

Posisinya akan menjadi sebagai berikut.

Gambar 28 : Mem-edit posisi GUI Text 3

Berikutnya buatlah lagi sebuah GUI Text, seperti langkah yang sebelumnya,

namun kali ini beri nama “gui_text”, namun anda perlu menyesuaikan dengan

script yang pertama anda tulis sebelumnya, ini dikarenakan dua hal ini akan

berkaitan. Isikan “Text” pada area Inspector dengan angka “0”, dan font size

27, sama seperti sebelumnya. Pada bagian Transform silahkan anda coba

posisikan sendiri untuk lebih memahami cara kerja dari Transform.

Gambar 29 : Mem-edit posisi GUI Text 4

Setelah anda memiliki sebuah GUI Text baru, yang perlu anda lakukan adalah

menambahkan script agar angka yang ada didalamnya dapat bertambah

sesuai dengan jumlah kunci yang anda ambil. Kembali mengulangi prosedur

membuat script sebelumnya, buat script baru dan beri nama “a_guitext”.

Isikan dengan script sebagai berikut.

Page 27: Pelatihan Game Development

PENGENALAN GAME DEVELOPMENT MENGGUNAKAN UNITY 3D GAME ENGINE

L C E N – H i m a t e k t r o I T S S u r a b a y a

Halaman 27

Scriptnya :

function Awake () { guiText.text = "" +0; }

Fungsi dari script ini adalah mengintegrasikan dengan script yang pertama, berikut perhitungannya.

Setelah script anda jadi anda tinggal memasangkannya pada objek gui_text.

Gambar 30 : Mem=ngecek script gui text

Page 28: Pelatihan Game Development

PENGENALAN GAME DEVELOPMENT MENGGUNAKAN UNITY 3D GAME ENGINE

L C E N – H i m a t e k t r o I T S S u r a b a y a

Halaman 28

Setelah anda selesai dengan menambahkan script anda dapat menjalankan game anda untuk mengetahui apakah script sudah berjalan atau tidak.

Dalam tutorial ini saya sudah menambahkan lighting agar gambar yang saya screenshot tidak terlalu gelap, untuk anda dapt kita mulai dengan mengklik Create pada area Hierarchy, terdapat 4 model lampu yang anda pilih.

Gambar 31 : Tampilan tampa lampu/lighting

Anda dapat berkreasi sendiri dalam penggunaan lighting ini berikut dengan atribut dalam area Inspector. Disini saya akan menggunakan lighting sebagai berikut.

Gambar 32 : Lighting

Page 29: Pelatihan Game Development

PENGENALAN GAME DEVELOPMENT MENGGUNAKAN UNITY 3D GAME ENGINE

L C E N – H i m a t e k t r o I T S S u r a b a y a

Halaman 29

Menambahkan sentuhan terakhir, dengan karakter First person yang anda gunakan maka anda mungkin menyadari langit yang berwarna biru. Tentunya hal ini kurang realistis untuk dilihat, untuk itu Unity memiliki sebuah fitur untuk mengatasi itu, yakni “Skybox”. Dengan skybox ini anda akan mendapatkan pemandangan langit yang indah.

Pertama-tama, dalam objek “First Person Controller” -> masuk pada bagian “main camera”, kemudian pada menu bar utama masuk ke menu “Component” -> “Rendering” -> “Skybox”, dengan ini maka secara otomatis skybox akan masuk kedalam atribut dari Main Camera dan dapat anda lihat pada area Inspector.

Gambar 33 : Skybox

Anda dapat memilih dengan meng-klik tanda o pada bagain kanan, disini saya mencoba texture skybox “MoonShine Skybox”. Dan hasilnya dapat anda bandingkan seperti berikut.

Page 30: Pelatihan Game Development

PENGENALAN GAME DEVELOPMENT MENGGUNAKAN UNITY 3D GAME ENGINE

L C E N – H i m a t e k t r o I T S S u r a b a y a

Halaman 30

Gambar 34 : Perbandingan Skybox

Demikian, maka jadilah game anda yang pertama.

Page 31: Pelatihan Game Development

PENGENALAN GAME DEVELOPMENT MENGGUNAKAN UNITY 3D GAME ENGINE

L C E N – H i m a t e k t r o I T S S u r a b a y a

Halaman 31

What’s Next Dari sini berakhirlah tutorial dasar pengenalan game development

menggunakan unity 3d game engine, seperti yang sudah saya paparkan

diawal, Unity hanyalah sebuah tool, seberapapun “powerfull”nya Unity tidak

akan ada gunanya jika anda kehilangan kreatifitas dalam membuat game,

karena game adalah seni, seni membuat game.

Bagi seorang game developer, selain tool, anda akan menghabiskan banyak

waktu dalam mengkonsep cerita dan konsep, untuk itu anda akan

membutuhkan sebuah media yang memudahkan anda dalam membeberkan

analisa dari game anda, biasanya terdapat 3 media yang umum digunakan,

yaitu digram alir(Flow-Chart), diagram transisi(State Transition Diagram),

dan GOMS(Goal, Objective, Methode, Selection), walaupun itu semua tidak

akan mengalahkan kemampuan Imajinasi anda.

Setelah itu anda akan membutuhkan banyak waktu untuk mempelajari dan

mendalami Unity serta mengasah skill anda. Yang mana sampai saat inipun

saya masih melakukannya, karena belajar tidak akan pernah berakhir.

Carilah komunitas untuk bertukar pikiran dan bertanya apabila anda

mengalami kesulitan.

Dan terakhir, mohon maaf yang sebesar-besarnya apabila dalam

penyampaian saya ada salah kata maupun hal yang kurang berkenan, pun

dalam tutorial pertama yang saya buat ini. Dan untuk rekan-rekan asisten

Labolatorium Telematika B.201 Teknik Elektro ITS, rekan-rekan grup Game-

Development, panitia, peserta pelatihan, dan seluruh yang telah membantu

saya ucapkan terima kasih yang sebesar-besarnya.

Abdillah Amiruddin

Email/YM : [email protected]

Page 32: Pelatihan Game Development

PENGENALAN GAME DEVELOPMENT MENGGUNAKAN UNITY 3D GAME ENGINE

L C E N – H i m a t e k t r o I T S S u r a b a y a

Halaman 32

Referensi

Creating games with Unity and Maya, Adam Watkins, Focal Press.

Tutorial Membuat Game dengan Unity part 1, Vadi Vanadi Buchari, e-book.

Java for Dummies, Barry Burd, PhD,e-book.

www.forum.unity3d.com.

Video tutorial, Ruben&Efraim, www.tornadotwins.com.

Kumpulan Unity project, www.unity3d.com.

dll yang tidak dapat saya sebutkan satu persatu.