protected virtual void Start() { if (IsVR) { IVRTracker tracker = IOC.Resolve <IVRTracker>(); m_input = new InputLowVR(tracker); } else { m_input = new InputLow(); } SetInput(); if (GetComponent <RTEBaseInput>() == null) { gameObject.AddComponent <RTEBaseInput>(); } if (m_eventSystem == null) { m_eventSystem = FindObjectOfType <EventSystem>(); if (m_eventSystem == null) { GameObject eventSystem = new GameObject("EventSystem"); eventSystem.transform.SetParent(transform, false); m_eventSystem = eventSystem.AddComponent <EventSystem>(); eventSystem.AddComponent <StandaloneInputModule>(); } } if (m_object == null) { m_object = gameObject.AddComponent <RuntimeObjects>(); } }
protected virtual void Awake() { if (m_instance != null) { Debug.LogWarning("Another instance of RTE exists"); return; } if (m_useBuiltinUndo) { m_undo = new RuntimeUndo(this); } else { m_undo = new DisabledUndo(); } if (m_raycaster == null) { m_raycaster = GetComponent <GraphicRaycaster>(); } IsVR = UnityEngine.XR.XRDevice.isPresent && m_enableVRIfAvailable; m_selection = new RuntimeSelection(this); m_dragDrop = new DragDrop(this); m_object = new ExposeToEditorEvents(this); if (IsVR) { m_input = new InputLowVR(); } else { m_input = new InputLow(); } m_instance = this; bool isOpened = m_isOpened; m_isOpened = !isOpened; IsOpened = isOpened; }