How to use Trigger Object
Trigger Object
Attach TriggerManger to the GameObject. If it is an object that requires "Zoom" status, check RequireZoom. If there is no prerequisites, it is done. (fig.1)
図1:単独トリガ(ズーム必須)
When the object requires other objects have already triggered, put them into prerequisites list. The object requires all the objects are triggered or destroyed. (fig.2)
図2:トリガ前提条件
Usage sample (fig.3)
void activateObject() { Camera cam = GetComponent<Camera>(); Ray ray = new Ray(cam.transform.position, cam.transform.forward); RaycastHit hit; if (Physics.Raycast(ray, out hit)) { hit.transform.gameObject.GetComponent<TriggerManager>().pullTrigger(isZoomed); } } |
図3:pullTrigger 呼び出し例(ViewController 内に実装ずみ)
Actions
To define the actions after the triggers, implement the action class from abstract class TriggerAction. (fig.4) Two protected override functions must be implemented. They are automatically called when the object is once triggered.
Caution: In this class, Update / Start are not called.
図4:トリガが引かれたときの処理(対象オブジェクトの破棄) TriggerActionDestroy.cs
図5:トリガが引かれたら継続して実行したい処理(右へ移動) TriggerActionFly.cs