UserInputManager 수정, UpdateRunner 제거
This commit is contained in:
@@ -24,6 +24,7 @@ namespace XED.Util
|
|||||||
CustomAssetRenderObject prevSelectedObject;
|
CustomAssetRenderObject prevSelectedObject;
|
||||||
RTGController rtgController;
|
RTGController rtgController;
|
||||||
ConvexHullCalculator convexHullCalculator = new ConvexHullCalculator();
|
ConvexHullCalculator convexHullCalculator = new ConvexHullCalculator();
|
||||||
|
UserInputManager userInputManager;
|
||||||
Vector3 clickBeginPos;
|
Vector3 clickBeginPos;
|
||||||
float clickLengthThreshold = 5.0f;
|
float clickLengthThreshold = 5.0f;
|
||||||
int uiLayer;
|
int uiLayer;
|
||||||
@@ -37,7 +38,7 @@ namespace XED.Util
|
|||||||
rtgController.onTransformBegin = OnTransformBegin;
|
rtgController.onTransformBegin = OnTransformBegin;
|
||||||
rtgController.onTransformChanged = OnTransformChangedFromRTG;
|
rtgController.onTransformChanged = OnTransformChangedFromRTG;
|
||||||
uiLayer = LayerMask.NameToLayer("UI");
|
uiLayer = LayerMask.NameToLayer("UI");
|
||||||
//var inputManager = FindSingle<UserInputManager>();
|
userInputManager = GameObject.FindAnyObjectByType<UserInputManager>();
|
||||||
var statusPanel = GameObject.FindFirstObjectByType<ModePanel>();
|
var statusPanel = GameObject.FindFirstObjectByType<ModePanel>();
|
||||||
statusPanel.AddController(this);
|
statusPanel.AddController(this);
|
||||||
|
|
||||||
@@ -422,12 +423,12 @@ namespace XED.Util
|
|||||||
|
|
||||||
public void StatusEnterEvent()
|
public void StatusEnterEvent()
|
||||||
{
|
{
|
||||||
ManagerHub.instance.Get<UserInputManager>().SetHandler(myHandler);
|
userInputManager.SetHandler(myHandler);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void StatusExitEvent()
|
public void StatusExitEvent()
|
||||||
{
|
{
|
||||||
ManagerHub.instance.Get<UserInputManager>().RemoveHandler(myHandler);
|
userInputManager .RemoveHandler(myHandler);
|
||||||
}
|
}
|
||||||
|
|
||||||
public InputHandler GetInputHandler()
|
public InputHandler GetInputHandler()
|
||||||
|
|||||||
@@ -54,6 +54,9 @@ namespace XED.Manage
|
|||||||
|
|
||||||
internal event Action onDrawStart;
|
internal event Action onDrawStart;
|
||||||
private MeshCreator meshCreator;
|
private MeshCreator meshCreator;
|
||||||
|
private UserInputManager userInputManager;
|
||||||
|
private Raycaster raycaster;
|
||||||
|
|
||||||
public class Group
|
public class Group
|
||||||
{
|
{
|
||||||
public List<LinePoint> points = new();
|
public List<LinePoint> points = new();
|
||||||
@@ -77,6 +80,8 @@ namespace XED.Manage
|
|||||||
prf_WallGroup = Resources.Load<WallGroup>("Prefabs/PRF_WallGroup");
|
prf_WallGroup = Resources.Load<WallGroup>("Prefabs/PRF_WallGroup");
|
||||||
|
|
||||||
meshCreator = ManagerHub.instance.Get<MeshCreator>();
|
meshCreator = ManagerHub.instance.Get<MeshCreator>();
|
||||||
|
userInputManager = GameObject.FindAnyObjectByType<UserInputManager>();
|
||||||
|
raycaster = GameObject.FindAnyObjectByType<Raycaster>();
|
||||||
handler = GetInputHandler();
|
handler = GetInputHandler();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -982,21 +987,19 @@ namespace XED.Manage
|
|||||||
|
|
||||||
public void StatusEnterEvent()
|
public void StatusEnterEvent()
|
||||||
{
|
{
|
||||||
var raycaster = ManagerHub.instance.Get<Raycaster>();
|
|
||||||
raycaster.AddEvent(Raycaster.EventType.FirstStay, typeof (Map), OnStayMap);
|
raycaster.AddEvent(Raycaster.EventType.FirstStay, typeof (Map), OnStayMap);
|
||||||
raycaster.AddEvent(Raycaster.EventType.FirstClick, typeof(Map), OnClickMap);
|
raycaster.AddEvent(Raycaster.EventType.FirstClick, typeof(Map), OnClickMap);
|
||||||
raycaster.AddEvent(Raycaster.EventType.FirstClick, typeof(LinePoint), OnClickLinePoint);
|
raycaster.AddEvent(Raycaster.EventType.FirstClick, typeof(LinePoint), OnClickLinePoint);
|
||||||
|
|
||||||
ManagerHub.instance.Get<UserInputManager>().SetHandler(handler);
|
userInputManager.SetHandler(handler);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void StatusExitEvent()
|
public void StatusExitEvent()
|
||||||
{
|
{
|
||||||
var raycaster = ManagerHub.instance.Get<Raycaster>();
|
|
||||||
raycaster.RemoveEvent(Raycaster.EventType.FirstStay, typeof(Map), OnStayMap);
|
raycaster.RemoveEvent(Raycaster.EventType.FirstStay, typeof(Map), OnStayMap);
|
||||||
raycaster.RemoveEvent(Raycaster.EventType.FirstClick, typeof(Map), OnClickMap);
|
raycaster.RemoveEvent(Raycaster.EventType.FirstClick, typeof(Map), OnClickMap);
|
||||||
raycaster.RemoveEvent(Raycaster.EventType.FirstClick, typeof(LinePoint), OnClickLinePoint);
|
raycaster.RemoveEvent(Raycaster.EventType.FirstClick, typeof(LinePoint), OnClickLinePoint);
|
||||||
ManagerHub.instance.Get<UserInputManager>().RemoveHandler(handler);
|
userInputManager.RemoveHandler(handler);
|
||||||
}
|
}
|
||||||
|
|
||||||
void Pointing()
|
void Pointing()
|
||||||
|
|||||||
@@ -53,8 +53,8 @@ namespace XED.Manage
|
|||||||
agvNodeMap = new AGVNodeMap();
|
agvNodeMap = new AGVNodeMap();
|
||||||
myHandler = GetInputHandler();
|
myHandler = GetInputHandler();
|
||||||
nodeGizmoController = ManagerHub.instance.Get<NodeGizmoController>();
|
nodeGizmoController = ManagerHub.instance.Get<NodeGizmoController>();
|
||||||
userInputManager = ManagerHub.instance.Get<UserInputManager>();
|
userInputManager = GameObject.FindAnyObjectByType<UserInputManager>();
|
||||||
raycaster = ManagerHub.instance.Get<Raycaster>();
|
raycaster = GameObject.FindAnyObjectByType<Raycaster>();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void Update()
|
private void Update()
|
||||||
|
|||||||
@@ -38,7 +38,7 @@ namespace XED.Manage
|
|||||||
|
|
||||||
public void Init()
|
public void Init()
|
||||||
{
|
{
|
||||||
var userInputManager = ManagerHub.instance.Get<UserInputManager>();
|
var userInputManager = GameObject.FindAnyObjectByType<UserInputManager>();
|
||||||
|
|
||||||
var commandHandler = CommandInvoker.instance.GetInputHandler();
|
var commandHandler = CommandInvoker.instance.GetInputHandler();
|
||||||
userInputManager.SetHandler(GetDefaultInputHandler());
|
userInputManager.SetHandler(GetDefaultInputHandler());
|
||||||
|
|||||||
@@ -14,13 +14,11 @@ namespace XED.Manage
|
|||||||
{
|
{
|
||||||
Join(new ProjectManager());
|
Join(new ProjectManager());
|
||||||
Join(new FBXFileManager());
|
Join(new FBXFileManager());
|
||||||
Join(new UserInputManager());
|
|
||||||
Join(new CustomAssetConnector());
|
Join(new CustomAssetConnector());
|
||||||
Join(new RenderObjectHandler());
|
Join(new RenderObjectHandler());
|
||||||
Join(new InterferedObjectManager());
|
Join(new InterferedObjectManager());
|
||||||
Join(new CursorManager());
|
Join(new CursorManager());
|
||||||
Join(new CameraManager());
|
Join(new CameraManager());
|
||||||
Join(new Raycaster());
|
|
||||||
Join(new AGVNodeManager());
|
Join(new AGVNodeManager());
|
||||||
Join(new NodeGizmoController());
|
Join(new NodeGizmoController());
|
||||||
Join(new AGVNodeLinkManager());
|
Join(new AGVNodeLinkManager());
|
||||||
|
|||||||
@@ -1,37 +0,0 @@
|
|||||||
using NUnit.Framework;
|
|
||||||
using System;
|
|
||||||
using System.Collections.Generic;
|
|
||||||
using UnityEngine;
|
|
||||||
using XED.Core;
|
|
||||||
|
|
||||||
namespace XED
|
|
||||||
{
|
|
||||||
public class UpdateRunner : UnitySingleton<UpdateRunner>
|
|
||||||
{
|
|
||||||
private static List<Action> updateActions = new List<Action>();
|
|
||||||
|
|
||||||
public static void AddAction(Action action)
|
|
||||||
{
|
|
||||||
if (!updateActions.Contains(action))
|
|
||||||
{
|
|
||||||
updateActions.Add(action);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public static void RemoveAction(Action action)
|
|
||||||
{
|
|
||||||
if (updateActions.Contains(action))
|
|
||||||
{
|
|
||||||
updateActions.Remove(action);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
void Update()
|
|
||||||
{
|
|
||||||
foreach (Action action in updateActions)
|
|
||||||
{
|
|
||||||
action?.Invoke();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,2 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: 40294507f68cc2942b2bef179e37eb08
|
|
||||||
@@ -6,7 +6,7 @@ using XRLib;
|
|||||||
|
|
||||||
namespace XED.Manage
|
namespace XED.Manage
|
||||||
{
|
{
|
||||||
public class UserInputManager : Manager
|
public class UserInputManager : MonoBehaviour
|
||||||
{
|
{
|
||||||
Dictionary<KeyCode, Action> getKeyActionTable = new Dictionary<KeyCode, Action>();
|
Dictionary<KeyCode, Action> getKeyActionTable = new Dictionary<KeyCode, Action>();
|
||||||
Dictionary<KeyCode, Action> upKeyActionTable = new Dictionary<KeyCode, Action>();
|
Dictionary<KeyCode, Action> upKeyActionTable = new Dictionary<KeyCode, Action>();
|
||||||
@@ -149,10 +149,5 @@ namespace XED.Manage
|
|||||||
|
|
||||||
updateLoop?.Invoke();
|
updateLoop?.Invoke();
|
||||||
}
|
}
|
||||||
|
|
||||||
public override void Init()
|
|
||||||
{
|
|
||||||
UpdateRunner.AddAction(Update);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -37,7 +37,7 @@ namespace XED
|
|||||||
var renderObjectHandler = ManagerHub.instance.Get<RenderObjectHandler>();
|
var renderObjectHandler = ManagerHub.instance.Get<RenderObjectHandler>();
|
||||||
panel_objectinfo.onTransformChanged += renderObjectHandler.OnTransformChanged;
|
panel_objectinfo.onTransformChanged += renderObjectHandler.OnTransformChanged;
|
||||||
|
|
||||||
var raycaster = ManagerHub.instance.Get<Raycaster>();
|
var raycaster = GameObject.FindAnyObjectByType<Raycaster>();
|
||||||
raycaster.onUIHoverEvent += panel_tooltip.ActivateTooltip;
|
raycaster.onUIHoverEvent += panel_tooltip.ActivateTooltip;
|
||||||
raycaster.onUIHoverExitEvent += panel_tooltip.DeactivateTooltip;
|
raycaster.onUIHoverExitEvent += panel_tooltip.DeactivateTooltip;
|
||||||
|
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ using XED;
|
|||||||
namespace XED.Manage
|
namespace XED.Manage
|
||||||
{
|
{
|
||||||
[DefaultExecutionOrder(int.MinValue)]
|
[DefaultExecutionOrder(int.MinValue)]
|
||||||
public class Raycaster : Manager
|
public class Raycaster : MonoBehaviour
|
||||||
{
|
{
|
||||||
public enum EventType
|
public enum EventType
|
||||||
{
|
{
|
||||||
@@ -58,10 +58,9 @@ namespace XED.Manage
|
|||||||
Vector2 prevMousePos;
|
Vector2 prevMousePos;
|
||||||
|
|
||||||
|
|
||||||
public override void Init()
|
public override void AfterAwake()
|
||||||
{
|
{
|
||||||
cam = Camera.main;
|
cam = Camera.main;
|
||||||
UpdateRunner.AddAction(Update);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void Update()
|
void Update()
|
||||||
|
|||||||
Reference in New Issue
Block a user