// 主线程循环 internal static void MainThreadUpdate() { FocusEventHandler.MainThreadUpdate(); ScreenResizeEventHandler.MainThreadUpdate(); CollisionEventHandler.MainThreadUpdate(); TriggerEventHandler.MainThreadUpdate(); PointerEventHandlerForScreen.MainThreadUpdate(); PointerEventHandlerForUI.MainThreadUpdate(); PointerEventHandlerForMesh.MainThreadUpdate(); KeyboardEventHandler.MainThreadUpdate(); FrameLoopEventHandler.MainThreadUpdate(); IntervalEventHandler.MainThreadUpdate(); CustomEventHandler.MainThreadUpdate(); TraceEventHandler.MainThreadUpdate(); }
/// <summary> 移除指针交互事件侦听 ( Mesh ) </summary> /// <param name="target">侦听对象 ( Mesh GameObject ) </param> /// <param name="listener">指针交互事件侦听函数 ( Params - 侦听对象,指针交互数据,射线碰撞数据 ) </param> public void RemovePointerListenerForMesh(GameObject target, Action <GameObject, PointerData, RaycastHit> listener) => PointerEventHandlerForMesh.RemoveListener(target, listener);
/// <summary> 添加指针交互事件侦听 ( Mesh ) </summary> /// <param name="target">侦听对象 ( Mesh GameObject ) </param> /// <param name="listener">指针交互事件侦听函数 ( Params - 侦听对象,指针交互数据,射线碰撞数据 ) </param> /// <param name="ignoreOcclusion">设置是否忽略遮挡。为 false 时,被其他 3D 对象遮挡的侦听对象将不会触发事件,默认为 false </param> /// <param name="priority">设置侦听函数执行优先级,数值越高优先级越高。同数值情况下,先添加的侦听函数优先级更高,默认为 0 </param> public void AddPointerListenerForMesh(GameObject target, Action <GameObject, PointerData, RaycastHit> listener, bool ignoreOcclusion = false, int priority = 0) => PointerEventHandlerForMesh.AddListener(target, listener, ignoreOcclusion, priority);