MODUL TINGKAT MENENGAH
2. Kinematic Rigidbodies
Untuk keperluan tertentu, kita dapat menon-aktifkan properties Use Gravity. Kita dapat menerapkan rigidbody yang lain dengan cara men-checklist Is Kinematic. Kinematic Rigidbodies tidak dipengaruhi oleh gaya, gravitasi dan tumbukkan.
Use Gravity aktif
Salah satu aplikasikinematicini yaitu pada prefabpeluru yang ditembakkan oleh pesawat yang dikontrol melalui script. Lebih lanjut cara menerapkannya dapat dilihat pada tutorial membuatgamedi sub bab berikutnya.
3. Collider
Collidermerupakan komponenphysicyang dipakai untuk mengontrol tumbukan antargame object. Secaradefault Unitymenyertakancolliderketika kita
membuatcube, sphere, capsule dan plane.Namun, untuk obyek(game object)
yang di-importdarisoftware modellinglain, maka kita perlu menambahkan
collider terhadap obyek tersebut secara.Unitymenyediakan lima tipecollider
sebagai berikut :
- Box,digunakan untuk obyek berbentuk kubus/kotak - Sphere,digunakan untuk obyek berbentuk bola - Capsule,digunakan untuk obyek berbentuk kapsul
- Mesh,digunakan untuk obyek yang memilikimeshyang kompleks - Wheel,digunakan untuk obyek berbentuk roda
Langkah membuatcollideradalah sebagai berikut : 1. KlikComponent> Physics> Box Collider
2. Perhatikan perubahanpropertiespadaInspector(gambar 2.39)
Catatan :
Ketika membuatgame objectdasar padaUnity, secaradefault collider sudah disertakan padagame objecttersebut. Object dasar tersebut adalah :
- Cube
- Sphere
- Capsule
- Cylinder
- Plane
2.11GUI (Graphical User Interface)
GUI adalah komponen antarmuka yang diperlukan untuk berinteraksi antara
user dengan program komputer. GUI dapat berbentuk teks, gambar, maupun
button. Pada bagian ini akan dijelaskan tiga jenis GUI padaunity:
1. GUI Text
Yaitu teknik menampilkan teks agar muncul di layar pada saat game
dijalankan.
2. GUI Texture
Yaitu teknik menampilkan gambar/image agar muncul di layar pada saat
gamedijalankan.
3. GUI Basic Control
Yaitu teknik menampilkan GUI yang dikontrol melalui script agar muncul di layar pada saat game dijalankan. Aplikasinya misalnya button untuk perpindahan menu, perpindahan level, atau GUI interaktif lainnya.
Langkah membuatGUI Textadalah sebagai berikut :
1. KlikGameObject > Create Other > GUI Text
Gambar 2.40 MembuatGUI Text
2. Edit Tulisan GUI Textdan Text menjadi Selamat Datang. Perhatikan tulisan di
Scene View, berubah bukan ?
Gambar 2.41 Mengedit tulisanGUI Text
Langkah membuatGUI Textureadalah sebagai berikut :
1. KlikGameObject > Create Other > GUI Texture
Perhatikan gambar 2.42!
Gambar 2.42 Membuat GUI Texture
2. Buat file *.jpg (misalnya texture.jpg) ukuran 800 x 600 piksel di Adobe Photoshop, lalusavedi folderasset, sehingga muncul pada jendela project.
Gambar 2.43 Memasukkan file Texture.jpg ke folder Assets
Gambar 2.44 Meng-edit Texture sizepadaInspector 3. Pilih/klikUnity Watermark-smalldi jendelaHierarchy
4. Dragtexture.jpgdi jendelaprojectke jendelaInspector(lihat gambar 2.44) 5. Klik Pixel Inset pada panel Inspector, lalu ubah ukuran Width : 800 dan
Height : 600. Perhatikan perubahan yang terjadi padaGame View.
Edit Width dan Height drag
6. Apabila texture tidak berada di tengah, atur nilai position x dan y pada jendelaInspector(gambar 2.44)
7. Apabila parameter yang diatur benar, kurang lebih texture akan tampil pada
Game View seperti gambar 2.45.
Gambar 2.45 TampilanGUI TexturepadaGame View, setelah diatur parameternya.
Sekarang anda sudah memahami cara membuatGUI TextdanGUI Texture.
Salah satu aplikasinya adalah untuk opening menu atau perpindahan antar scene
padagame.
Pada bagian akhir sub pokok bahasan GUI, akan dijelaskan beberapa langkah sekaligus contoh membuatGUIdenganJavascript. Ikuti langkahnya sebagai berikut :
1. KlikAssets > Create > Javascript
2. Ubah nama default NewBehaviourScriptmenjadi MenuScript(nama file boleh bebas)
Gambar 2.46 MembuatScriptdenganJavascript 4. Ketikkanscriptsebagai berikut :
/* Contoh Script GUI untuk leveling Game */
function OnGUI () {
// Membuat Background Kotak
GUI.Box (Rect (10,10,100,90), "Menu Game");
// Membuat button pertama. Jika ditekan, maka akan dipanggil Level 1
if (GUI.Button (Rect (20,40,80,20), "Level 1")) { Application.LoadLevel (1);
}
// Membuat button kedua
if (GUI.Button (Rect (20,70,80,20), "Level 2")) { Application.LoadLevel (2);
} }
PenjelasanScript:
function OnGUI ()
merupakan fungsi untuk mengontrolGUIpadaUnity. Setiap kali anda akan membuatGUIdenganscript, maka fungsi ini harus dipanggil.
GUI.Box (Rect (10,10,100,90), "Menu Game");
merupakan perintah membuat kotak dengan aturan 10= jarak dari sumbu x ke sisi kotak, 10=jarak dari sumbu y ke sisi kotak, 100 = panjang kotak dan 90 =lebar kotak.
if (GUI.Button (Rect (20,40,80,20), "Level 1")) { Application.LoadLevel (1);
Merupakan perintah membuatbutton dengan aturan 20= jarak dari sumbu x ke sisibutton, 40=jarak dari sumbu y ke sisi button, 80 = panjangbuttondan
20 = lebar kotak. Kemudian tulisan"Level 1" merupakan tulisan padabutton, dan perintah Application.LoadLevel (1); merupakan perintah untuk
memanggilscene/level 1.
if (GUI.Button (Rect (20,70,80,20), "Level 2")) { Application.LoadLevel (2);
Perintah untuk membuat button kedua dan saat di-klikmaka akan memanggil
scene/level 2.
Catatan :
Pada saat membuatgame, tentu anda akan mempunyai banyakscene, sehingga GUI seperti ini diperlukan untuk perpindahan antarscene.
5. Buatgame objectbaru dengan cara klikGameObject> Create Empty
6. Drag scriptyang dibuat(MenuScript)ke dalamGameObjectdi jendela
Hierarchy
7. Untuk melihat hasilnya, coba jendela kerja dipindahkan ke Game Viewlalu tekanPlay.
2.12. Membuat Game 2D : Petualangan Angkasa !
Salah satu perbedaan antara game 2D dengan 3D terletak pada posisi game objek terhadap sudut pandang pemain. Pada game 2D posisi game object berada pada koordinat x dan y saja, sehingga pemain hanya dapat menggerakan game object ke kanan, kiri, atas atau bawah. Berbeda dengan game 3D, pemain seolah-olah dapat masuk kedalam ruang permainan (sumbu z) dan leluasa menggerakan game object
ke depan, belakang, kiri, kanan, atas maupun bawah.
Pada sub bab ini, akan dijelaskan tahapan membuat game 2D sederhana. Diharapkan apabila sudah memahami konsep game 2D, maka anda akan mudah mengembangkangame 3D.
Tema game 2D ini adalah petualangan angkasa. Skenarionya adalah, player diharuskan menghancurkan serangan batu luar angkasa dengan cara menembakkan peluru dari pesawat milik player. Apabila peluru mengenai batu luar angkasa, maka nilai akan bertambah 10. Nilai dibatasi sampai 1000, sehingga bila mencapai 1000, makaplayer dianggap menang. Selanjutnya, apabila batu mengenai pesawat player, maka nyawa akan berkurang. Nyawa playerdisediakan 3 nyawa, sehingga kalau tiga kali kena batu, maka permainan berakhir(game over).
Mari kita mulai.