チュートリアル枠です。
今回自分が3年前HoloLens に初めて触れ右も左もわからない中開発を行った頃の自分に向けてチュートリアルを作成します。
〇HoloLensで音声入力を使用しよう!
今回はHoloLensアプリ開発環境を1から構築することを目的とします。 下のようなテーマで書いていこうと思います。
2.MRTKを使おう!MRTKとは何か?
3.HoloLensの5大要素を学ぶ
・音声入力を使う。←本日はこちら
4.応用編
〇環境
・Unity2019.4.18f1(LTS)
・VisualStudio2019
●筆者PC環境
・OS:Windows10 Pro
・プロセッサ:11th Gen Intel(R) Core(TM) i9-11900K @ 3.50GHz 3.50 GHz
・Microsoft HoloLens 1st
・Microsoft HoloLens 2
スペックに関しては高いほうが良いですが、HoloLensアプリ開発の場合VRと比べ求められるスペックは低いです。
VRアプリ開発の場合PC自体がVRReady(VRゲームを実行できる環境)であることがほぼ必須ですが、HoloLensの場合VRReadyではなくても開発自体はできます。
Unityが動くスペックであれば最低限問題ないです。
〇音声入力とは?
音声入力はその名の通りユーザーの音声コマンドでHoloLensアプリ内でオブジェクトを操作することを指します。
近年ではSiriをはじめとして音声アシスタント機能は身の回りにありますので、そちらがイメージしやすいと思います。
今回はこの音声入力をアプリ内に組み込んでいきます。
〇音声コマンドの登録
HoloLensでは開発者側で任意の音声コマンドを登録できます。
①hierarchyウィンドウから[MixedRealityToolkit]を選択し、インスペクターウィンドウから[Input]のサイドタブを選択し展開します。
②MRTKの構成はデフォルト値を変更することはできません。必ずCloneしてオリジナルの構成ファイルを作成する必要があります。[Clone]を選択しInputProfileを複製します。
③[Speech]タブを展開します。
④SpeechのProfileもテンプレートのものを使用しているデフォルトの場合[Clone]を選択し、複製します。
このSpeechタブ内ですでに登録されている音声コマンドを見ることができます。
⑤[+Add a New Speech Command]をクリックします。
⑥[Speech]タブ最下部にからのコマンドリストが追加されます。
⑦からのコマンドリストに任意のキーワードを設定します。ここで注意が必要なことが、使用しているHoloLensの言語が英語の場合は英語のキーワード、日本語などの場合は日本語など合わせる必要があります。
例えば筆者環境ではOSを英語で使用しているため[Drop]と登録していますが、HoloLens側で使用してる言語が日本語の場合[ドロップ]と登録する必要があります。
以上で音声コマンドの登録が完了しました。
〇登録したコマンドを使用する
①[Cube]オブジェクトを選択し[Addcompornent]から新規のコンポーネントを追加します。
②[SpeechInputHandller]コンポーネントを追加します。
これは登録されている音声コマンドを認識した場合発火する処理をつかさどるコンポーネントです。
③[+]アイコンを選択し音声コマンドのリストを追加し、キーワードに[Drop]もしくは日本語で登録している場合[Drop]と入力します。
④[Responce()]にCube(自分自身)を設定し[Drop.DoropDown]と音声認識を検知するとイベントが走るようにします。
〇音声認識機能の確認
ビルドを行う前に音声認識を行うためにマイクの入力を許可する必要があります。
①[PlayerSettings]から[PublishingSettings]を開きます。
②[Capability]から[Microphone]にチェックが入り有効であることを確認してビルドします。
アプリをデプロイし、Cubeを見つめて「drop」と唱えることでCubeが地面に落ちていきます