Unity C# Tutorial Indonesia : Basic 26 - OnTrigger

Seperti halnya method OnCollision, method OnTrigger juga digunakan untuk mendeteksi objek yang berbenturan, tapi ada perbedaan yaitu Method OnTrigger hanya dapat digunakan ketika "Is Trigger" diaktifkan pada salah satu objek.

Is Trigger berfungsi agar kedua objek yang berbenturan dan meski berbenturan kedua objek tetap dapat saling menembus.

Ada 3 jenis kondisi pada Method OnTrigger, yaitu :
void OnTriggerEnter, Kondisi ketika objek mulai berbenturan dengan collider. 
void OnTriggerStay, Kondisi ketika objek berada di dalam area collider.
void OnTriggerExit, Kondisi ketika objek keluar dari area.



MULAI
Momon akan mencoba membuat contoh sederhana yaitu sebuah pendeteksi jika ada objek yang memasuki daerah batasan.




1. Tambah 3 buah objek, Alas(Cube), si Bola(Sphere) dan Directional Light.
2. Buat C# Script "LatihanTrigger"




Klik si Bola dan atur Radius Collider menjadi lebih besar, Collider ini nantinya yang akan mendeteksi jika ada objek yang masuk ke daerah collider.

Berikan ceklis pada Is Trigger agar objek dapat menembus collider.




Tambahkan Asset Character Control, Klik assets - Import Package - Character Controller.




1. Tambahkan Firs Person Controller ke Scene
2. Tambahkan script "LatihanTrigger" ke objek First Person Controller
3. Buka script dan tuliskan listing program berikut :

A. LatihanTrigger.cs
using UnityEngine;
using System.Collections;

public class LatihanTrigger : MonoBehaviour {

                void OnTriggerEnter(Collider other){
                                if(other.gameObject.name == "Si Bola"){
                                                other.gameObject.renderer.material.color = Color.red;
                                }
                }
               
                void OnTriggerExit(Collider other){
                                if(other.gameObject.name == "Si Bola"){
                                                other.gameObject.renderer.material.color = Color.white;
                                }
                }

}

Penjelasan :

void OnTriggerEnter(Collider other)
Adalah nama Method dari OnTrigger dan other adalah nama variabel dengan tipe Collider. varibel ini digunakan untuk mendeteksi objek.

if(other.gameObject.name == "Si Bola")
Jika objek yang ditubruk adalah objek dengan nama Si Bola, maka jalankan event untuk merubah warna.



Jalankan game dan coba masuk ke area collider, maka bola berubah jadi warna merah.




Kemudian coba keluar dari area collider, maka warna bola kembali seperti semula.



SELESAI





Tag : Basic
Back To Top