private void Awake()
        {
            if (m_instance != null)
            {
                Debug.LogWarning("Another instance of GizmoManager Exists");
            }

            m_instance = this;
            Cleanup();
            Initialize();
            AwakeOverride();
        }
        private void OnDestroy()
        {
            Cleanup();

            if (m_instance == this)
            {
                m_instance       = null;
                m_typeToMaterial = null;
                m_types          = null;
            }

            OnDestroyOverride();
        }