Membuat Game 3D Dengan Unity : Mobile Racing Game (Part 1)

3333Cukup lama saya tidak posting tutorial Unity berhubung beberapa hari lalu pulang kampung dan yes jaringan internetnya sedikit susah. Pos terakhir saya yaitu Membuat Game Android Dengan Unity : Space Sonic (Part 3), namun posting kali ini saya tidak akan dulu melanjutnkan tutorial game space shooter (space sonic). Kebetulan beberapa hari lalu pada sesi matrikulasi TKJMD ITB saya mendapat mata pelajaran 3D Blender, dan sempat kepikiran untuk membuat tutorial game 3D. Tutorial kali ini saya mengambil tema Mobile Racing Game, jika Anda pernah berselancar di situs berbagi video Youtube tentang Unity Car Tutorial maka Anda akan familiar dengan Flat Tutorial. Ya, saya juga dulu belajar dari channel sana. Pada flat tutorial target buildnya standalone dan menggunakan javascript, pada tulisan saya kali ini target buildnya untuk mobile (Android), sehingga saya improvisasi script dan settingnya sesuai kebutuhan mobile. Oiya, script yang digunakan juga menggunakan C#, bukan Javascript seperti pada Flat Tutorial. Pada part 1 ini kita belum akan membahas scene setup nya terlebih dahulu, jadi belum akan membahas tentang scriptnya.
Oke, langsung saja kita membuat project baru seperti biasanya, jangan lupa pilih workspace 3D. Karena kita akan membuat game car racing, maka kita perlu objek car yang akan kita setup dan gunakan. Saya menyarankan Anda mencari terlebih dahulu objek car yang akan digunakan. Saya menggunakan free 3d object dari UnityMagic, silahkan terlebih dahulu objek 3D nya, jika Anda punya model / objek sendiri, silahkan skip ke step selanjutnya. Disarankan menggunakan model dengan lowpoly, karena build targetnya untuk mobile device yang akan sangat expensive jika menggunakan model dengan banyak Poly. Anyway untuk tutorial kali ini bisa menggunakan model seadanya terlebih dahulu.

Jika sudah selesai di download, silahkan pilih menu Asset > Import Package > Custom Package. Kemudian import package model yang telah Anda download tadi.

Jika berhasil di Import, didalam folder prefab ada model car dengan nama “Aston Martin”, model tersebut yang akan kita gunakan sebagai objek utamanya.

Sebelum menambahkan objek utamanya, buat terlebih dahulu objek Terrain yang akan digunakan sebagai lintasannya. Pilih menu Game Object > Create Other > Terrain. Pada inspector objek terrain, perhatikan section Settings > Add Texture, properties tersebut akan kita gunakan untuk assign texture utama pada terrain.

Karena terrainnya kita asumsikan sebagai lintasan, maka kita tambahkan exture asphalt. Silahkan cari di Google texture asphalt yang Anda kehendaki :

Jika sudah, drag-n-drop texture tersebut kedalam folder project Anda. Kemudian assign texture tersebut pada Settings > Add Texture dalam inspector objek Terrain. Maka hasilnya seperti berikut :

Kemudian drag model yang telah kita download tadi kedalam scene :

Oiya, seperti judulnya, game ini akan kita build untuk mobile platform, misalnya target build yang saya pakai adalah untuk Platform Android, maka switch platform project yang kita buat

Begitupun pengaturan texture, shader dan lain sebagainya harus kita sesuaikan untuk kemubutuhan mobile device. Pada objek car pilih “Austin_body” kemudian ubah shadernya seperti berikut :

Di folder project model, ubah juga semua format texturenya kedalam “Automatic True Color”

Tambahkan juga Skybox dengan cara import terlebih dahulu packagenya sepertti beriku :

Kita akan memakai Skybox “Sunny 2″, lagi-lagi kita juga harus ubah format texturenya ke true color seperti berikut :

Jika sudah, masuk ke menu Edit > Render Setting kemudian pada pilihan Skybox pilih material “Sunny2″

Kita tambahkan sedikit efek reflektif pada objek car supaya keliatan lebih nyata. Karena shader reflektif membutuhkan Cubemap, buat terlebih dahulu cubemap nya. Juga tambahkan objek directional light

Assign masing-masing properties cubemap dengan memasukan texture Skybox “Sunny2″. Anda juga bisa menggunakan skybox lain dengan untuk cubemap nya dengan catatan pada render setting pun Anda harus menggunakan skybox yang serupa, supaya antara reflektif map dan skybox nya match.

Pada objek car, pilih “Austin_Body” kemudian pada shadernya diubah menjadi Reflective/Difuse, pada bagian Reflection Cubemap masukin cubemap yang telah kita buat tadi. Maka hasilnya seperti berikut :

Perhatikan bayagan skybox yang terrefleksi pada body objek, terlihat refleksi skybox “Sunny2″ yang telah kita assign tadi. Oke, kelihatannya terrain yang dibuat terlalu lebar, perkecil ukuran terrain menjadi 500×500

Ini sebenarnya opsional, bisa kita lakukan setelah semua systemnya selasai. Namun tidak ada salahnya kita setup untuk test scene. Buat objek-objek pembatas bukit pada terrain dengan menggunakan tool “Raise” pada inspector di objek Terrain

Silahkan berkreasi sesuai keinginan Anda. Kemudian beri texture lain pada objek-objek bukit yang telah dibuat tadi dengan menggunakan texture baru yang sesuai.

Untuk menambahkan texture baru pilih dit Texture > Add Texture pada inspector terrain. Pilih Pain Texture kemudian brush bukit-bukit tersebut dengan texture baru.
Terakhir pindahkan objek kamera tepat dibelakang objek car, maka hasil akhirnya adalah seperti berikut :

Oke, untuk scene setup rasanya cukup seperti ini dulu, kekurangan lainnya mungkin akan saya bahas di part selanjutnya. Di part 2 akan kita bahas Basic movement untuk objek utamanya. Btw, selamat taun baru bagi yang merayaknnya, selamat berlibur.

Post a Comment