示例#1
0
        // Functions
        private void Start()
        {
            // Default the scene & the HoloToolkit objects to the camera
            Vector3 sceneOrigin = CameraCache.Main.transform.position;

            Parent_Scene.transform.position = sceneOrigin;
            MappingObserver.SetObserverOrigin(sceneOrigin);
            InputManager.Instance.AddGlobalListener(gameObject);


            var keywordsToActions = new Dictionary <string, Action>
            {
                { "Toggle Scanned Mesh", ToggleScannedMesh },
                { "Toggle Processed Mesh", ToggleProcessedMesh },
            };

            keywordRecognizer = new KeywordRecognizer(keywordsToActions.Keys.ToArray());
            keywordRecognizer.OnPhraseRecognized += args => keywordsToActions[args.text].Invoke();
            keywordRecognizer.Start();

            GameObject newMenuBit = Instantiate(lookAroundPrefab, DebugDisplay.transform.position, DebugDisplay.transform.rotation);

            newMenuBit.transform.SetParent(DebugDisplay.transform);
            newMenuBit.transform.position = DebugDisplay.transform.position;
            //DebugDisplay.transform.localScale = new Vector3 (0.01f, 0.01f, 0.01f);
            DebugDisplay.fontSize    = 0;
            DebugSubDisplay.fontSize = 0;
        }
        /// <summary>
        /// Set default visual states on Start
        /// </summary>
        protected virtual void Start()
        {
            if (Keyword != "")
            {
                mKeywordArray = new string[1] {
                    Keyword
                };
                if (Keyword.IndexOf(',') > -1)
                {
                    mKeywordArray = Keyword.Split(',');

                    mKeywordDictionary = new Dictionary <string, int>();
                    for (int i = 0; i < mKeywordArray.Length; ++i)
                    {
                        mKeywordDictionary.Add(mKeywordArray[i], i);
                    }
                }

                if (!KeywordRequiresGaze)
                {
                    mKeywordRecognizer = new KeywordRecognizer(mKeywordArray);
                    mKeywordRecognizer.OnPhraseRecognized += KeywordRecognizer_OnPhraseRecognized;
                    mKeywordRecognizer.Start();
                }
            }

            mCheckEnabled  = IsEnabled;
            mCheckSelected = IsSelected;

            UpdateEffects();
        }
示例#3
0
        protected override void Start()
        {
            base.Start();

            int keywordCount = Keywords.Length;

            if (keywordCount > 0)
            {
                string[] keywords = new string[keywordCount];

                for (int index = 0; index < keywordCount; index++)
                {
                    keywords[index] = Keywords[index].Keyword;
                }

                keywordRecognizer = new KeywordRecognizer(keywords);
                keywordRecognizer.OnPhraseRecognized += KeywordRecognizer_OnPhraseRecognized;

                if (RecognizerStart == RecognizerStartBehavior.AutoStart)
                {
                    keywordRecognizer.Start();
                }
            }
            else
            {
                Debug.LogError("Must have at least one keyword specified in the Inspector on " + gameObject.name + ".");
            }
        }
    private void Start()
    {
        keywords.Add("Begin Simulation", () =>
        {
            this.BroadcastMessage("OnBeginSimulation");
        });

        keywords.Add("Begin Orbit", () =>
        {
            GameObject focusObject = GazeGestureManager.Instance.FocusedObject;
            if (focusObject != null)
            {
                focusObject.SendMessage("OnBeginOrbit", SendMessageOptions.DontRequireReceiver);
            }
        });

        keywords.Add("Stop All Orbits", () =>
        {
            this.BroadcastMessage("OnStopOrbit");
        });

        keywords.Add("Slow Down Time", () =>
        {
            this.BroadcastMessage("OnReduceTime");
        });

        keywordRecognizer = new KeywordRecognizer(keywords.Keys.ToArray());

        keywordRecognizer.OnPhraseRecognized += KeywordRecognizer_OnPhraseRecognized;
        keywordRecognizer.Start();
    }
示例#5
0
 /// <summary>
 /// Make sure the keyword recognizer is off, then start it.
 /// Otherwise, leave it alone because it's already in the desired state.
 /// </summary>
 public void StartKeywordRecognizer()
 {
     if (keywordRecognizer != null && !keywordRecognizer.IsRunning)
     {
         keywordRecognizer.Start();
     }
 }
示例#6
0
    // Use this for initialization
    void Start()
    {
        string[][] words =
        {
            new string[] { "Add one",   "Cube1" },
            new string[] { "Add two",   "Cube2" },
            new string[] { "Add three", "Cube3" }
        };

        foreach (var w in  words)
        {
            keywords.Add(w[0], () =>
            {
                var direction = Camera.main.transform.forward;

                var origin = Camera.main.transform.position;

                var position = origin + direction * 2.0f;

                Instantiate(Resources.Load(w[1]), position, Quaternion.identity);
            });
        }

        // Tell the KeywordRecognizer about our keywords.
        keywordRecognizer = new KeywordRecognizer(keywords.Keys.ToArray());

        // Register a callback for the KeywordRecognizer and start recognizing!
        keywordRecognizer.OnPhraseRecognized += KeywordRecognizer_OnPhraseRecognized;
        keywordRecognizer.Start();
    }
    private void Start()
    {
        keywords.Add("connect", () =>
        {
#if !UNITY_EDITOR
            Debug.Log("connecting");
            this.Connect();
#endif
        });

        keywords.Add("calibrate", () =>
        {
#if !UNITY_EDITOR
            Debug.Log("starting calibration");
            this.StartCalibration();
#endif
        });

        calibrationPoint.SetActive(false);

        // Tell the KeywordRecognizer about our keywords.
        string[] keyArray = new string[keywords.Keys.Count];
        keywords.Keys.CopyTo(keyArray, 0);
        for (var i = 0; i < keyArray.Length; i++)
        {
            Debug.Log(keyArray[i]);
        }

        keywordRecognizer = new KeywordRecognizer(keyArray);

        // Register a callback for the KeywordRecognizer and start recognizing!
        keywordRecognizer.OnPhraseRecognized += KeywordRecognizer_OnPhraseRecognized;
        keywordRecognizer.Start();
    }
 private void SetKeywordListener(bool listen)
 {
     if (listen)
     {
         if (KeywordRequiresGaze && mKeywordArray != null)
         {
             if (mKeywordRecognizer == null)
             {
                 mKeywordRecognizer = new KeywordRecognizer(mKeywordArray);
                 mKeywordRecognizer.OnPhraseRecognized += KeywordRecognizer_OnPhraseRecognized;
                 mKeywordRecognizer.Start();
             }
             else
             {
                 if (!mKeywordRecognizer.IsRunning)
                 {
                     mKeywordRecognizer.Start();
                 }
             }
         }
     }
     else
     {
         if (mKeywordRecognizer != null && KeywordRequiresGaze)
         {
             if (mKeywordRecognizer.IsRunning)
             {
                 mKeywordRecognizer.Stop();
                 mKeywordRecognizer.OnPhraseRecognized -= KeywordRecognizer_OnPhraseRecognized;
                 mKeywordRecognizer.Dispose();
                 mKeywordRecognizer = null;
             }
         }
     }
 }
示例#9
0
    // Use this for initialization
    void Start()
    {
        speechText.text = "";

        //---SPAWNERS---\\
        keywords.Add("Spawn Cube", () =>
        {
            InvokeRepeating("spawnCube", spawnDelay, spawnTime);
        });

        keywords.Add("Spawn Sphere", () =>
        {
            InvokeRepeating("spawnSphere", spawnDelay, spawnTime);
        });

        keywords.Add("Spawn Capsule", () =>
        {
            InvokeRepeating("spawnCapsule", spawnDelay, spawnTime);
        });

        //Create the keyword recognizer and tell it what to recognize:
        keywordRecognizer = new KeywordRecognizer(keywords.Keys.ToArray());

        //Register for the OnPhraseRecognized event
        keywordRecognizer.OnPhraseRecognized += KeywordRecognizer_OnPhraseRecognized;

        //Start recognize
        keywordRecognizer.Start();
    }
示例#10
0
    private void Start()
    {
        Advertise("VoicePub", "/hololens/audio/user_transcript", 1, out pub);

        voicebox = gameObject.GetComponent <TextToSpeech>();

        // Activation phrase for dictation
        Keywords.Add("Hello", () =>
        {
            ros.std_msgs.String msg = new ros.std_msgs.String("Hello!");
            if (pub != null)
            {
                pub.SendMessage(msg);
            }
            voicebox.StartSpeaking("Hello");
        });

        Keywords.Add("hello there", () =>
        {
            PhraseRecognitionSystem.Shutdown();
            StartBeep.Play();
            dictationRecognizer.Start();
        });

        dictationRecognizer = new DictationRecognizer();
        dictationRecognizer.DictationComplete   += DictationComplete;
        dictationRecognizer.DictationError      += DictationError;
        dictationRecognizer.DictationHypothesis += DictationHypothesis;
        dictationRecognizer.DictationResult     += DictationResult;

        keywordRecognizer = new KeywordRecognizer(Keywords.Keys.ToArray());
        keywordRecognizer.OnPhraseRecognized += KeywordRecognizer_OnPhraseRecognized;
        keywordRecognizer.Start();
    }
    // Use this for initialization
    void Start()
    {
        keywords.Add("Reset world", () =>
        {
            // Call the OnReset method on every descendant object.
            this.BroadcastMessage("OnReset");
        });

        keywords.Add("Drop", () =>
        {
            var focusObject = GazeGestureManager.Instance.FocusedObject;
            if (focusObject != null)
            {
                // Call the OnDrop method on just the focused object.
                focusObject.SendMessage("OnDrop");
            }
        });

        // Tell the KeywordRecognizer about our keywords.
        keywordRecognizer = new KeywordRecognizer(keywords.Keys.ToArray());

        // Register a callback for the KeywordRecognizer and start recognizing!
        keywordRecognizer.OnPhraseRecognized += KeywordRecognizer_OnPhraseRecognized;
        keywordRecognizer.Start();
    }
示例#12
0
 private void Start()
 {
     keywords.Add("Fire", () => CheckIfAnyAsteroidsshouldBeDestroyed(true));
     _keywordRecognizer = new KeywordRecognizer(keywords.Keys.ToArray());
     _keywordRecognizer.OnPhraseRecognized += KeywordRecognizer_OnPhraseRecognized;
     _keywordRecognizer.Start();
 }
示例#13
0
                #pragma warning restore 414, 649
        #endregion

        private void OnEnable()
        {
                        #if UNITY_EDITOR || WINDOWS_UWP
            // Setup hand interaction events
            InteractionManager.InteractionSourceLost     += SourceLost;
            InteractionManager.InteractionSourcePressed  += SourcePressed;
            InteractionManager.InteractionSourceReleased += SourceReleased;
            InteractionManager.InteractionSourceUpdated  += SourceUpdated;

            // Setup voice control events
            keywordRecognizer = new KeywordRecognizer(new string[] { "circle", "ball", "cube", "reset", "clear", "enable", "disable", "add", "up", "down", "white up", "white down", "save" });
            keywordRecognizer.OnPhraseRecognized += HeardKeyword;
            keywordRecognizer.Start();
                        #endif

            // Setup scene objects
            spheres.SetActive(false);
            shaderBalls.SetActive(true);
            cubes.SetActive(false);

            targetPos = transform.position;

            // Hook up resources
            lightCapture = FindObjectOfType <LightCapture>();

            // No hard dependence on the MRTK, just reflect into the parts we want to use
            Type textToSpeechType = Type.GetType("HoloToolkit.Unity.TextToSpeech");
            if (textToSpeechType != null)
            {
                tts         = (Component)FindObjectOfType(textToSpeechType);
                speakMethod = textToSpeechType.GetMethod("StartSpeaking");
            }
        }
示例#14
0
    void Start()
    {
        //Default direction
        moveVector = new Vector3(0, 0, speed);

        //Set text to null
        speechText.text = "";

        //Move snake every 300ms
        InvokeRepeating("Move", 0.3f, 0.3f);

        //---COMMANDS---\\

        keywords.Add("Up", () =>
        {
            Debug.Log("U");
            speechText.text = "Command recognized: Up";
            //rb.AddForce(Vector3.forward * speed * Time.deltaTime);
            moveVector = new Vector3(0, 0, speed);
        });

        keywords.Add("Down", () =>
        {
            Debug.Log("D");
            speechText.text = "Command recognized: Down";
            moveVector      = new Vector3(0, 0, -speed);
        });

        keywords.Add("Left", () =>
        {
            Debug.Log("L");
            speechText.text = "Command recognized: Left";
            moveVector      = new Vector3(-speed, 0, 0);
        });

        keywords.Add("Right", () =>
        {
            Debug.Log("R");
            speechText.text = "Command recognized: Right";
            moveVector      = new Vector3(speed, 0, 0);
        });

        keywords.Add("Stop", () =>
        {
            Debug.Log("S");
            speechText.text = "Command recognized: Stop";
            moveVector      = new Vector3(0, 0, 0);
        });


        //Create the keyword recognizer and tell it what to recognize:
        keywordRecognizer = new KeywordRecognizer(keywords.Keys.ToArray());

        //Register for the OnPhraseRecognized event
        keywordRecognizer.OnPhraseRecognized += KeywordRecognizer_OnPhraseRecognized;

        //Start recognize
        keywordRecognizer.Start();
    }
示例#15
0
    // Start is called before the first frame update
    void Start()
    {
        //Create keywords for keyword recognizer
        keywords.Add("open geology", () =>
                     { TriggerInstructions(); /* calls the DisplayNextSentence method */ });

        keywords.Add("next page", () =>
                     { DisplayNextSentence(); /* calls the DisplayNextSentence method */ });

        keywords.Add("previous page", () =>
                     { DisplayPreviousSentence(); /* calls the DisplayPreviousSentence method */ });

        keywords.Add("start over", () =>
                     { pageOne(); /* calls the page 1 method */ });

        keywords.Add("go to page 2", () =>
                     { pageTwo(); /* calls the page two method */ });

        keywords.Add("go to page 3", () =>
                     { pageThree(); /* calls the page three method */ });

        keywords.Add("go to page 4", () =>
                     { pageFour(); /* calls the page four method */ });

        keywords.Add("go to page 5", () =>
                     { pageFive(); /* calls the page five method */ });

        keywords.Add("go to page 6", () =>
                     { pageSix(); /* calls the page six method */ });

        keywords.Add("go to page 7", () =>
                     { pageSeven(); /* calls the pageseven method */ });

        keywords.Add("go to page 8", () =>
                     { pageEight(); /* calls the pageeight method */ });

        keywords.Add("last page", () =>
                     { lastPage(); /* calls the lastpage method */ });

        keywords.Add("begin note taking", () =>
                     { noteTaking(); /* calls the note taking method */ });

        keywordRecognizer = new KeywordRecognizer(keywords.Keys.ToArray());
        keywordRecognizer.OnPhraseRecognized += KeywordRecognizer_OnPhraseRecognized;

        Debug.Log("Initiliazed keyword recognizer");

        // Start keyword rcognizer
        // Note: keyword recognizer needs to be called immediately after setting up keyword parameters
        keywordRecognizer.Start();

        Debug.Log("Keyword recognizer started");

        // Start an array of unknown size
        instructions = new ArrayList();

        Debug.Log("Geology running is " + geologyRunning);
        //   geologyRunning = false;
    }
示例#16
0
    // Use this for initialization
    void Start()
    {
        //when you say "reset" then reset the light to off
        keywords.Add("Reset", () =>
        {
            // Call the OnReset method on every descendant object.
            this.BroadcastMessage("OnReset");
        });
        //when you say "Turn off" then turn sphere white
        keywords.Add("Turn off", () =>
        {
            var focusObject = GazeGestureManager.Instance.FocusedObject;
            if (focusObject != null)
            {
                focusObject.SendMessage("OnReset", SendMessageOptions.DontRequireReceiver);
            }
        });
        //when you say "Red" then turn sphere red
        keywords.Add("Red", () =>
        {
            var focusObject = GazeGestureManager.Instance.FocusedObject;
            if (focusObject != null)
            {
                focusObject.SendMessage("OnRed", SendMessageOptions.DontRequireReceiver);
            }
        });
        //when you say "blue" then turn sphere blue
        keywords.Add("Blue", () =>
        {
            var focusObject = GazeGestureManager.Instance.FocusedObject;
            if (focusObject != null)
            {
                focusObject.SendMessage("OnBlue", SendMessageOptions.DontRequireReceiver);
            }
        });
        //when you say "Turn on" then turn sphere yellow
        keywords.Add("Turn on", () =>
        {
            var focusObject = GazeGestureManager.Instance.FocusedObject;
            if (focusObject != null)
            {
                focusObject.SendMessage("OnTurnOn", SendMessageOptions.DontRequireReceiver);
            }
        });
        //when you say "Yellow" then turn sphere Yellow
        keywords.Add("Yellow", () =>
        {
            var focusObject = GazeGestureManager.Instance.FocusedObject;
            if (focusObject != null)
            {
                focusObject.SendMessage("OnTurnOn", SendMessageOptions.DontRequireReceiver);
            }
        });

        // Add new keywords to KeywordRecognizer and try make it recognize the phrases
        keywordRecognizer = new KeywordRecognizer(keywords.Keys.ToArray());
        keywordRecognizer.OnPhraseRecognized += KeywordRecognizer_OnPhraseRecognized;
        keywordRecognizer.Start();
    }
示例#17
0
        private void Start()
        {
            var asd = Enum.GetNames(typeof(ShotMode)).Union(new string[] { "object" }).ToArray();

            recog = new KeywordRecognizer(asd);
            recog.OnPhraseRecognized += OnSpeechKeywordRecognized;
            recog.Start();
        }
示例#18
0
    // Start is called before the first frame update
    void Start()
    {
        KeywordRecognizerObj = new KeywordRecognizer(Keywords_array);
        KeywordRecognizerObj.OnPhraseRecognized += OnKeywordsRecognized;
        KeywordRecognizerObj.Start();

        anim = GetComponent <Animator>();
    }
示例#19
0
        private void Awake()
        {
            myLogs.LogMessage(LoggingLevels.Verbose, "SpeechProcessing Awake Called", Module: "SpeechProcessing.Awake", Version: "ALPHA");

            m_Recognizer = new KeywordRecognizer(m_Keywords);
            m_Recognizer.OnPhraseRecognized += OnPhraseRecognized;
            m_Recognizer.Start();
        }
 void Start()
 {
     keywordCollection = new Dictionary <string, KeywordAction>();
     keywordCollection.Add("Take Picture", TakePicture);
     keywordRecognizer = new KeywordRecognizer(keywordCollection.Keys.ToArray());
     keywordRecognizer.OnPhraseRecognized += KeywordRecognizer_OnPhraseRecognized;
     keywordRecognizer.Start();
 }
示例#21
0
 // Use this for initialization
 void Start()
 {
     keywordActions.Add("hola", Fun1);
     keywordActions.Add("adiós", Fun2);
     keywordRecognizer = new KeywordRecognizer(keywordActions.Keys.ToArray());
     keywordRecognizer.OnPhraseRecognized += OnKeywordsRecognized;
     keywordRecognizer.Start();
 }
 void Start()
 {
     keywords.Add("Ürf", Cast);
     keywords.Add("attack", Cast2);
     keywordRecognizer = new KeywordRecognizer(keywords.Keys.ToArray());
     keywordRecognizer.OnPhraseRecognized += onKeywordsRecognized;
     keywordRecognizer.Start();
 }
示例#23
0
    // Start is called before the first frame update
    void Start()
    {
        actions.Add("quit", Quit);

        keywordRecognizer = new KeywordRecognizer(actions.Keys.ToArray());
        keywordRecognizer.OnPhraseRecognized += RecognizedSpeech;
        keywordRecognizer.Start();
    }
示例#24
0
    private void Start()
    {
        _keywords.Add("Menu", ToggleVisibility);

        _keywordRecognizer = new KeywordRecognizer(_keywords.Keys.ToArray());
        _keywordRecognizer.OnPhraseRecognized += KeywordRecognizer_OnPhraseRecognized;
        _keywordRecognizer.Start();
    }
    void Start()
    {
        actions.Add("help", Help);

        keywordRecognizer = new KeywordRecognizer(actions.Keys.ToArray());
        keywordRecognizer.OnPhraseRecognized += SpeechRecognised;
        keywordRecognizer.Start();
    }
    void Start()
    {
        actions.Add("system call enhance armament", Enhance);

        keywordRecognizer = new KeywordRecognizer(actions.Keys.ToArray());
        keywordRecognizer.OnPhraseRecognized += RecognizedSpeech;
        keywordRecognizer.Start();
    }
    // Use this for initialization
    void Start()
    {
        keywordRecognizer = new KeywordRecognizer(new[] { resetCommand });
        keywordRecognizer.OnPhraseRecognized += KeywordRecognizer_OnPhraseRecognized;
        keywordRecognizer.Start();

        _navMeshAgent = this.GetComponent <NavMeshAgent>();
    }
示例#28
0
 void Start()
 {
     keywords    = new string[1];
     keywords[0] = "Noah";
     recognizer  = new KeywordRecognizer(keywords);
     recognizer.OnPhraseRecognized += OnPhraseRecognized;
     recognizer.Start();
 }
示例#29
0
 //starts to listen for player voice input
 void ListenToPlayer(GameObject player)
 {
     // instantiate keyword recognizer, pass keyword array in the constructor
     keywordRecognizer = new KeywordRecognizer(Keywords_array);
     keywordRecognizer.OnPhraseRecognized += OnKeywordsRecognized;
     // start keyword recognizer
     keywordRecognizer.Start();
 }
示例#30
0
 public void resetKeywordRecognizer()
 {
     _keywordRecognizer.Stop();
     _keywordRecognizer.Dispose();
     _keywordRecognizer = new KeywordRecognizer(_keywords.Keys.ToArray());
     _keywordRecognizer.OnPhraseRecognized += KeywordRecognizer_OnPhraseRecognized;
     _keywordRecognizer.Start();
 }
示例#31
0
 /* Setup */
 private void Start()
 {
     recognizer = new KeywordRecognizer(keywords, confidence);
     recognizer.OnPhraseRecognized += Recognizer_OnPhraseRecognized;
     recognizer.Start();
     gameManager = GetComponentInParent <GameManager>();
     Debug.Log("Start speechcontroller");
 }
        void Start()
        {
            if (KeywordsAndResponses.Length > 0)
            {
                // Convert the struct array into a dictionary, with the keywords and the keys and the methods as the values.
                // This helps easily link the keyword recognized to the UnityEvent to be invoked.
                responses = KeywordsAndResponses.ToDictionary(keywordAndResponse => keywordAndResponse.Keyword,
                                                              keywordAndResponse => keywordAndResponse.Response);

                keywordRecognizer = new KeywordRecognizer(responses.Keys.ToArray());
                keywordRecognizer.OnPhraseRecognized += KeywordRecognizer_OnPhraseRecognized;

                if (RecognizerStart == RecognizerStartBehavior.AutoStart)
                {
                    keywordRecognizer.Start();
                }
            }
            else
            {
                Debug.LogError("Must have at least one keyword specified in the Inspector on " + gameObject.name + ".");
            }
        }
示例#33
0
 void Update()
 {
     if (pristine)
     {
         // Checks to see if machine can use the speech recognition
         if (PhraseRecognitionSystem.isSupported)
         {
             CreateRecognizedCommands();
             m_Recognizer = new KeywordRecognizer(m_Keywords.ToArray());
             m_Recognizer.OnPhraseRecognized += OnPhraseRecognized;
             m_Recognizer.Start();
         }
         // If not, make the speech toggle (in panel) non-interactable.
         else
         {
             PanelController.DeactivateSpeechToggle();
             isSpeech = false;
         }
         pristine = false;
     }
 }