/// <summary>
        /// Creates a Blockout trigger in 10 units in front of the scene camera
        /// </summary>
        void CreateTrigger()
        {
            var target = Instantiate(m_triggerPrefab);

            Undo.RegisterCreatedObjectUndo(target, "Created Blockout Trigger");

            target.transform.position = BlockoutStaticFunctions.GetSceneViewSpawnPosition();
            target.transform.SetParent(blockoutHierarchy.triggers);
            target.name = m_triggerPrefab.name;
            Selection.activeGameObject = target;
            BlockoutStaticFunctions.SnapPositionSelection();
            SceneView.lastActiveSceneView.FrameSelected();
        }
        /// <summary>
        ///     Creates a tri planer asset in front of the camera.
        /// </summary>
        /// <param name="prefab">The target tri planar prefab</param>
        private void CreateTriPlanerAsset(GameObject prefab)
        {
            var target = Instantiate(prefab);

            Undo.RegisterCreatedObjectUndo(target, "Created Tri-Planer Asset");

            target.transform.position = BlockoutStaticFunctions.GetSceneViewSpawnPosition();
            target.name = prefab.name + " (Tri-Planar)";
            Selection.activeGameObject = target;
            BlockoutStaticFunctions.SnapPositionSelection();

            SceneView.lastActiveSceneView.FrameSelected();

            Tools.current = Tool.Scale;
            BlockoutStaticFunctions.ApplyCurrentTheme();
        }
        public void SpawnSelected(int idx)
        {
            EditorHotkeysTracker.quickPicker = false;
            if (Selection.activeGameObject)
            {
                if (quickerMode == 0)
                {
                    GameObject[] target;

                    BlockoutStaticFunctions
                    .ReplaceObject(new[] { Selection.activeGameObject },
                                   searchSuggested[idx]
                                   .prefab, out target);
                    Selection.activeGameObject = target[0];
                }
                else
                {
                    var        pos = BlockoutStaticFunctions.GetSceneViewSpawnPosition();
                    GameObject go  = Instantiate(searchSuggested[idx].prefab, pos, searchSuggested[idx].prefab.transform.rotation);
                    Undo.RegisterCreatedObjectUndo(go, "Spawn Asset From Quick Picker");
                    Selection.activeGameObject = go;
                }
            }
            else
            {
                if (idx <= searchSuggested.Length || idx > 0)
                {
                    var        pos = BlockoutStaticFunctions.GetSceneViewSpawnPosition();
                    GameObject go  = Instantiate(searchSuggested[idx].prefab, pos,
                                                 searchSuggested[idx].prefab.transform.rotation);
                    Undo.RegisterCreatedObjectUndo(go, "Spawn Asset From Quick Picker");
                    Selection.activeGameObject = go;
                }
            }
            showQuickPicker = false;
        }