Apa Itu GameObject, Prefabs dan Rigidbody? - IMedia9 - Connecting Inspiration

Breaking

Wednesday, December 7, 2016

Apa Itu GameObject, Prefabs dan Rigidbody?


Pada kesempatan ini, saya akan menjelaskan sedikit tentang cara membuat game dengan Unity khususnya beberapa komponen penting yaitu GameObject, Material, Prefab, Collider dan RigidBody. Sebelum masuk ke dalam pembahasan, anda perlu membuat sebuah project baru dengan Unity, mengimpor package Environment dan membuat sebuah Terrain + Directional Light. Kurang lebih tampilan Scene anda adalah seperti berikut:
  Tutorial Networks Unity B01
Bila anda tidak tahu caranya, anda bisa terlebih dahulu membaca artikel mengenai langkah-langkah pembuatan semua itu di artikel ini: Belajar Unity Untuk Pemula – Hello World Apa itu GameObject? Oke, selanjutnya adalah kita akan membuat sebuah Cube dengan cara klik menu GameObject > 3D Object > Cube

Tutorial Networks Unity B02
Secara default Cube akan ditampilkan seperti berikut. Anda cukup dobel kllik tulisan Cube pada panel Hierarchy untuk melakukan zoom langsung ke Cube si GameObject. Jadi GameObject bisa diartikan sebagai semua benda yang tampil di dalam Scene atau terdaftar di dalam panel Hierarchy.
  Tutorial Networks Unity B03
Masalah klise bagi para pemula adalah, mereka selalu menyangka jika setelah menyimpan GameObject di Scene maka secara otomatis GameObject itu akan muncul pada saat game di jalankan. Nggak semudah itu lah.
  Tutorial Networks Unity B04
Ingat bahwa game yang dibangun oleh Unity sangat tergantung pada GameObject MainCamera. Sehingga kita harus memastikan bahwa GameObject (dalam hal ini Cube) yang ingin di lihat oleh player (nantinya) dapat dilihat oleh MainCamera. Caranya adalah dengan memastikan KOORDINAT GameObject Cube berada di depan GameObject MainCamera. Bagi yang sudah mahir, anda cukup samakan nilai Transform x,y,x antara GameObject Cube dengan GameObject MainCamera. Tapi ada cara lain yang sering saya pakai untuk memudahkan. Caranya, drag GameObject Cube ke dalam GameObject MainCamera di panel Hierarchy sehingga GameObject Cube menjadi child dari GameObject MainCamera
  Tutorial Networks Unity B05
Setelah itu dengan masih memilih GameObject Cube, beri nilai posisi transformnya 0,0,0
  Tutorial Networks Unity B06Dijamin, posisi GameObject Cube akan langsung tepat sama dengan GameObject MainCamera di mana pun si GameObject MainCamera berada. Ini disebut konsep “nyamain” local coordinat child ke parent.
  Tutorial Networks Unity B07
Kalau sudah sama, tinggal di drag aja lagi si GameObject Cube keluar (misalnya kalau memang nggak mau dijadiin child terus-terusan).
  Tutorial Networks Unity B08
Dan geser Cube rada ke depan MainCamera.
  Tutorial Networks Unity B09
Hasilnya bisa anda tes menggunakan tab Game. Anda sekarang mengerti maksudnya bukan? GameObject MainCamera adalah GameObject terpenting dalam game anda. Jadi pastikan anda melakukan cross cek berkali-kali saat melakukan desain terhadap GameObject-GameObject lainnya.
  Tutorial Networks Unity B10
Apa itu Material? Secara umum GameObject yang kita buat dari menu Unity itu polos. Gimana caranya supaya Cube ini menjadi berwarna? Apakah dengan cinta? Ya, cinta memang bisa membuat hidup lebih berwarna. Tapi sayangnya, Unity nggak mengenal kata cinta. Unity lebih mengenal istilah Material. Ada beberapa cara untuk membuat material yang dapat memberikan warna/texture pada GameObject kita. Misalnya, dengan mendrag langsung sebuah Texture dari panel Assets ke dalam GameObject.
  Tutorial Networks Unity B11
Secara otomatis, ada folder Materials yang dibentuk dan penampakan si GameObject Cube juga akan langsung berubah.
  Tutorial Networks Unity B12
Sedangkan cara kedua adalah dengan membuatkan sebuah folder Materials secara manual yaitu dengan cara klik kanan di panel Assets dan pilih Create > Folder.
  Tutorial Networks Unity B14
Kasih nama folder barunya Materials.
Tutorial Networks Unity B15
Masuk ke dalam folder Materials terus klik kanan lagi, dan sekarang pilih Create > Material. Kasih nama materialnya misal: CubeMaterial.
  Tutorial Networks Unity B16
Pertanyaan: Apakah dalam membuat Material kita harus SELALU membut folder Materials dulu? Nggak mesti sih. Ini mah supaya rapi aja.
  Tutorial Networks Unity B17
Kalau Materialnya sudah ada klik kotak di samping tulisan Albedo dan pilih warna yang akan digunakan.
  Tutorial Networks Unity B18
Kalau sudah begini, gampang. Tarik saja Materialnya ke GameObject Cube dalam Scene. Berubah deh warnanya.
  Tutorial Networks Unity B19
Sekarang dengan cara yang sama coba buat 2 buah GameObject lagi, yaitu Sphere dan Capsule dan beri masing-masing 3 material yang berbeda. Pasti udah pada bisa kan?
  Tutorial Networks Unity B20
Tes game anda dan kurang lebih tampilannya nanti akan seperti ini. Jadi apa itu Material? Material adalah variabel yang menjadi jembatan antara warna/texture ke dalam GameObject anda. Kenapa variabel? Karena warna pada GameObject bisa berubah2 jika warna/texture pada Materialnya juga diubah-ubah. Camkan! Yang biasanya suka berubah-ubah adalah nilai pada Materialnya. Bukan warna atau pun texturenya.
  Tutorial Networks Unity B21
Apa itu Prefabs? Kalau tadi kita bikin folder Materials, sekarang cobalah bikin folder Prefabs.
  Tutorial Networks Unity B22
Kemudian dari panel Hierarchy, tarik GameObject Cube ke dalam folder Prefabs. Perhatikan nama GameObject akan berubah menjadi biru. Selamat. Anda baru saja membuat sebuah Prefabs.
  Tutorial Networks Unity B23
Dengan cara yang sama, coba anda buat GameObject yang lain menjadi Prefabs.
  Tutorial Networks Unity B24
Apa sih pentingnya Prefabs? Jika anda ingin tahu, cobalah anda tarik Prefabs Cube (dari panel Assets) ke dalam Scene berkali-kali. Apa yang terjadi? Ada banyak Cube berwarna merah hanya dalam 1x drag bukan? Padahal sebelumnya, kita membutuhkan beberapa langkah untuk membuat Cube menjadi berwarna murah, mulai dari membuat material dan seterusnya. Jadi apa itu Prefabs? Prefabs adalah sebuah Object yang dapat digunakan berkali-kali dalam pembangunan game di Unity. Sekali saja anda mampu membuat prefabs yang keren, misalnya, karakter yang dapat mengeluarkan api lengkap dengan script dan efek, maka karakter itu bisa anda gunakan pada berbagai project game lain hanay dengan dalam 1x drag. Bikin pertamanya doang yang berdarah-darah, ke sananya, lancar jaya mas brow!
  Tutorial Networks Unity B25
Apa itu Collider & Rigidbody? Sekarang kita akan membahas collider. Saat anda mengklik GameObject Cube, klik icon Edit Collider di panel Inspector. Akan muncul titik-titik ijo di sana.
  Tutorial Networks Unity B26
Untuk GameObject Cube tarik titik ijo bagian bawahnya sampai keluar seperti ini.
  Tutorial Networks Unity B27Untuk Capsule cuekin ajalah.
  Tutorial Networks Unity B28
Untuk Sphere, tarik keluar seperti ini… mmm, nggak usah deh.
  Tutorial Networks Unity B29
Masukin ke dalam aja. Jadi titik-titik ijonya ada di dalam. Ini kita mau ngapain sih? Udahlah, kalau nggak ngerti nurut aja dulu.
  Tutorial Networks Unity B30
Selanjutnya klik lagi Cube dan pilih menu Component > Physics > Rigidbody
Tutorial Networks Unity B31
Lakukan hal yang sama dengan kedua GameObject lainnya dan atur MainCamera untuk bisa melihat rada ke bawah, dekat dengan permukaan Terrain.
  Tutorial Networks Unity B32
Jalankan Game anda dan perhatikan hasilnya. Ketiga GameObject akan terjatuh ke Terrain. Ini adalah pengaruh Rigidbody yang memberikan efek seolah-olah setiap GameObject terkena gaya gravitasi.
  Tutorial Networks Unity B33
Tapi jika anda perhatikan lebih jauh (kembali saja ke tab Scene tanpa mematikan tombol Play), anda bisa melihat jika GameObject Cube melayang di udara. Kok bisa?
  Tutorial Networks Unity B34
Sebenarnya bukan melayang sih, tapi GameObject Cube SUDAH MENDARAT di tanah. Yang jadi masalah adalah MATA ANDA berbeda dengan PERHITUNGAN COLLIDER. Secara visual, mata anda yang melihat kejadian ini akan merasa ganjil dan spontan berkata jika Cube nya masih melayang dan tidak menyentuh tanah. Masalahnya, Unity nggak perduli dengan visual. Unity hanya perlu memastikan apakah Collider GameObject menyentuh Collider Terrain? Kalau kondisi ini terpenuhi, berarti ‘objek’ sudah menyentuh ‘tanah’.
  Tutorial Networks Unity B35
Perhatikanlah yang Capsule. Kenapa Capsulenya nyungsep? Itu sih kata manusia. Lah kata Unity?
  Tutorial Networks Unity B36Lihat baik-baik. Collidernya pas menyentuh tanah. Tutorial Networks Unity B37
Hal yang sama juga berlaku untuk GameObject Sphere. Sekarang sudah mengerti kan?
  Tutorial Networks Unity B38
Sedikit tambahan soal Rigidbody, ada beberapa parameter yang bisa dimainkan. Salah satunya adalah Drag. Coba ganti dengan 10.
Tutorial Networks Unity B39
Apa yang terjadi? Kok Capsulenya nggak jatuh?
  Tutorial Networks Unity B40
Jatuh kok, cuma lebih lambat. Gaya gesek dragnya lebih tinggi akibatnya jatuhnya lebih lambat. Bayangin jatuh antara batu dan kertas. Analoginya kayak begitulah.
  Tutorial Networks Unity B41
Apa itu Physic Material? Ini juga sekedar pengetahuan saja. Selain Rigidbody, perilaku dan GameObject juga bisa ditambah dengan sebuah komponen bernama PhysicMaterial.
  Tutorial Networks Unity B42Caranya, pilih salah satu GameObject misal Sphere dan klik Material dan pilih Bouncy.
  Tutorial Networks Unity B43
Setelah itu klik iconnya 2 kali sampai di panel Assets muncul daftar PhysicMaterial.
  Tutorial Networks Unity B44
Pilih Bouncy dan pada parameter Bounce Combine pilih Averrage.
  Tutorial Networks Unity B45
Bouncy Artinya memantul. Efek ini akan membuat GameObject Sphere memantul kayak sebuah bola basket. Lucu ya?
  Tutorial Networks Unity B46
Nah, sekian dulu postingan saya semoga bermanfaat. Sampai jumpa di tutorial Unity seri Fundamental lainnya dan jangan lupa jika anda tertarik untuk mempelajari cara membuat game, silahkan sempatkan diri anda untuk membaca artikel lainnya di website ini. Semoga bermanfaat.
Cara Membuat Game Menggunakan Unity3D Cara Membuat Game Menggunakan Unity3D Cara Membuat Game Menggunakan Unity3D Cara Membuat Game Menggunakan Unity3D Cara Membuat Game Menggunakan Unity3D Cara Membuat Game Menggunakan Unity3D Cara Membuat Game Menggunakan Unity3D Cara Membuat Game Menggunakan Unity3D Cara Membuat Game Menggunakan Unity3D Berikut ini adalah beberapa Tutorial Unity3D yang bisa anda pelajari untuk memahami penggunaan game engine Unity 3D dalam membuat game berbasis PC maupun Android. Tutorial ini akan terus diupdate oleh saya, maupun oleh rekan-rekan kontributor yang lain. Semoga bermanfaat. Berikut ini adalah beberapa Tutorial Unity3D yang bisa anda pelajari untuk memahami penggunaan game engine Unity 3D dalam membuat game berbasis PC maupun Android. Tutorial ini akan terus diupdate oleh saya, maupun oleh rekan-rekan kontributor yang lain. Semoga bermanfaat. Berikut ini adalah beberapa Tutorial Unity3D yang bisa anda pelajari untuk memahami penggunaan game engine Unity 3D dalam membuat game berbasis PC maupun Android. Tutorial ini akan terus diupdate oleh saya, maupun oleh rekan-rekan kontributor yang lain. Semoga bermanfaat. Berikut ini adalah beberapa Tutorial Unity3D yang bisa anda pelajari untuk memahami penggunaan game engine Unity 3D dalam membuat game berbasis PC maupun Android. Tutorial ini akan terus diupdate oleh saya, maupun oleh rekan-rekan kontributor yang lain. Semoga bermanfaat. Berikut ini adalah beberapa Tutorial Unity3D yang bisa anda pelajari untuk memahami penggunaan game engine Unity 3D dalam membuat game berbasis PC maupun Android. Tutorial ini akan terus diupdate oleh saya, maupun oleh rekan-rekan kontributor yang lain. Semoga bermanfaat.

No comments:

Post a Comment