Shooting Target

Materi kali ini membahas kembali fungsi Instantiate(). Jika pada materi sebelumnya bola yang dibuat secara run time dibiarkan jatuh begitu saja, kali ini bola-bola tersebut akan dilemparkan menuju sebuah sasaran.
Unity dilengkapi dengan event standar untuk mendeteksi dua buah GameObject yang berbenturan, salah satunya adalah CollisionDetection.


Buatlah project baru di Unity atau cukup scene baru saja jika masih ingin menggunakan project yang sudah digunakan dalam materi sebelumnya. Tambahkan sebuah Plane dengan cara klik menu GameObject -> 3D Obect -> Plane.


Atur posisi Plane pada komponen Transform menjadi (0,0,0).  Setelah itu klik Main Camera di tab Hierarchy, kemudian ganti Positionnya menjadi (0,0,0) dan Rotationnya menjadi (0,90,0).


Masih dengan Main Camera terpilih pada tab Hierarchy, tambahkan EmptyChild dengan cara klik menu GameObject -> Create Empty Child.



Siapkan Prefab Bola.


Tambahkan sebuah Capsule atau objek apapun untuk menjadi target sasaran tembak, lalu centang pilih Is Trigger pada objek tersebut.


Buat sebuah 3D text dengan cara klik menu GameObject -> 3D Object -> 3D Text.
Ganti tulisan “Hello World” dengan “Bingo!”.



Berikutnya, buatlah script C# dan beri nama ShootingTarget.cs 


Pasang script ShootingTarget.cs pada GameObject Main Camera dan isilah parameter posisiTembak dengan EmptyGameObject yang menjadi Child Main Camera dan parameter Bola dengan prefab Bola.


Sampai tahap ini, jika Game dijalankan, sebuah bola akan meluncur dari kamera setiap kali tombol spasi ditekan.


Tahap berikutnya adalah, akan dibuat skema, ketika bola mengenai target alias capsule tadi kita akan memberi keterangan pada 3D Text dan hitung score hasil tepat sasaran. Buatlah sebuah script C# kembali dan beri nama Target.cs


Pasang script Target.cs pada GameObject Capsule, kemudian isilah parameter text3d dengan GameObject 3D Text dan parameter pesan dengan teks sesuai keinginan Anda untuk pesan saat target terkena bola.







Komentar

Postingan populer dari blog ini

Translate dan Raycast dengan Unity

E-Payment

AI Sederhana