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

3344Di part 1, kita sudah mempersiapkan keperluan untuk scene. Pada part 2 ini kita belum dulu masuk ke basic movement dari objek car, sebelum itu kita perlu setup physics terlebih dahulu. Oke langsung saja buka project sebelumnya. Sebelum menambahkan rigidbody kita tambahkan terlebih dahulu Collider pada objek Car. Mengapa perlu collider ? Saya pernah sedikit membahasnya di tutorial yang lain di link berikut : Membuat Game 2D Sederhana dengan Unity (Part 2). Buat objek game baru dengan nama “Collider Bawah” atau nama terserah Anda yang menjelaskan bahwa objek ini akan digunakan sebagai Collider Car bagian bawah.

Drag kedalam objek “Aston” (parent), Pastikan position nya berada di x=0 y=0 z=0 terhadap objek “Aston”. Mengapa tidak generate langsung collider pada masing-masing objek Car ? Yep, memang sebenarnya bisa saja kita menambahkan Collider dengan tipe mesh, seperti berikut :

Namun, sekali lagi target build yang kita pakai adalah mobile device. Untuk keperluan optimasi kita harus lakukan beberapa tweak untuk setup-setup yang akan memberatkan kinerja, termasuk salah satunya mesh collider yang mempunyai banyak vertex. Namun jika target buildnya adalah untuk Standalone, memang idealnya memakai Mesh Collider supaya proses kapsulasi collidernya lebih rapi. Kembali lagi ke objek “Collider Bawah”, tambahkan komponen Box Collider, kemudian atur size box collider tersebut sehingga menutupi bagian bawah objek Car.



Kekurangannya mungkin akan terasa aneh jika nanti objek Car collision dengan objek lain. Anda bisa mengatur sendiri bagaimana proses kapsulasi collider nya dengan cara menambahkan beberapa box collider lain misalnya, namun untuk kali ini saya biarkan seperti ini terlebih dahulu. Jika bagian bawah telah selesai, tambahkan juga Collider untuk bagian atapnya, lakukan proses yang sama seperti membuat Collider untuk bagian bawah.

Sehingga hasil akhirnya adalah seperti berikut :

Pilih objek “Aston” kemudian tambahkan komponen rigidbody

Sampai tahap ini kita telah membuat physics untuk sebagian besar objeknya. Hit Play, jika berhasil maka seharusnya bagian body Car tidak akan tenggelam karena sudah mempunyai Collider. Namun untuk bagian wheel nya masih belum mempunyai Collider. Selanjutnya kita akan membuat Collider untuk wheel, hapus beberapa bagian objek wheel sehingga yang tersisa hanya bagian depan kanan.

Buat game objek baru dengan nama “WheelFR” yang berarti ban depan bagian kanan. Buat objek tersebut berada parent pada objek “Austin_wheel_FR” kemudian set semua posisinya ke 0. Maksudnya supaya objek baru tersebut berada tepat ditengah-tengah objek “Austin_wheel_FR”.

Jika sudah, pindahkan posisi parent menjadi kebalikannya. Jika tadi objek “WheelFR” berada dalam objek “Austin_wheel_FR”, sekarang buat menjadi terbalik, objek “Austin_wheel_FR” menjadi berada didalam objek “WhellFR”.

Selanjutnya copy objek “WheelFR” kemudian rename menjadi “WheelFL”. Pindahkan objek tersebut kebagian kanan Car, kemudian rotate pada sumbu Y sebesar -180 derajat.

Pilih kedua objek wheel yang telah dibuat, kemudian duplicate dan geser kebagian belakang. Rename menjadi “WheelRR” dan WheelRL”.
Selanjutnya buat game objek baru kosong, kemudian berinama “Wheel Transforms”, drag ke 4 objek wheel tadi menjadi berada didalam objek “Wheel Transforms”.

Duplicate objek “Wheel Transform”, kemudian rename objek duplicate tadi menjadi “Wheel Colliders”, hapus semua objek transformnya sehingga didalam objek “Wheel Colliders” kita hanya mempunyai empat objek kosong.

Seleksi ke 4 objek kosong tersebut, kemudian tambahkan komponen Wheel Collider, dan voila! kita telah menambahkan collider kedalam ke empat wheel.

Mengapa prosesnya harus seperti ini ? kenapa tidak langsung menambahkannya saja pada objek wheel ? First, kita tidak tahu apakah posisi wheel sejajar dengan wheel lainnya. Jadi kita buat saja satu referensi position dari wheel FR, agar kedudukan objeknya sama terhadap terrain. Dan alasan kenapa wheel collider harus terpisah dengan objeknya adalah untuk kepentingan Scripting yang akan kita gunakan nanti. Oke, selanjutnya pastikan semua objek transform dan collider berada dalam objek “Aston”.

Hit Play! maka seharusnya objek Car tidak temggelam kedalam terrain beserta wheelnya.

Post a Comment