レッスン 6

目次

Enviromentの中のEnvironment(Environments inside Environments)

Woodlandsの暗い森の中、あなたは 小さい 木造の小屋の横を通ります。気になって中をのぞくと、Woodlandsの全体的なサウンドスケープが、瞬時に、厚い木の壁のせいでくぐもって聞こえます

ゲームの環境ゾーンのトリガーを定義し構築してしまえば、ほとんどの詳細をWwiseからコントロールでき、環境リバーブの影響を受けるサウンドや、リージョンごとのエフェクトの種類などを決められます。ただし場合によって、あるエリアの中に、さらに別のエリアが存在することもあり、例えばWoodlands Cabin(森の小屋)は、Woodlands(森)リージョンの中にあるので、通常だと、ここのWwiseオブジェクトが複数のAux Busに同時にルーティングされるはずです。これではゲームの内容と矛盾する音響環境が発生してしまうので、リージョン同士の優先順位をコントロールし、Aux Busへのルーティングを制限する必要があります。これから、Woodlands Cabin用のAux Environmentを別に作成し、その中のサウンドが、すべてWoodlands CabinというAux Busだけを使うように設定します。

  1. Unityのメニューで、 Audiokinetic > Certification > 301 > Lesson 6 を選択し、 Environments inside Environments を選択します。

  2. Hierarchyで Aux Environments を右クリックし、 3D Object を選択し、 Cube を選択します。

    グッドプラクティスとして、Cubeゲームオブジェクトの名前を変更してください。

  3. Cube ゲームオブジェクトを右クリックし、 Rename を選択して名前を Woodlands Cabin にします。

  4. Inspector > Box Colliderで、 Is Trigger を有効にします。

    Unityのゲームオブジェクトは、Inspectorの一番上にあるTransformコンポーネントによって、ポジションが設定されます。1つのゲームオブジェクトのポジションを、別のゲームオブジェクトの上に合わせたければ、一方のTransformコンポーネントの値をコピーし、他方にペーストすればいいだけです。

    [注釈]

    同じタイプ、または同じスクリプトのコンポーネント同士であれば、コンポーネント値をコピー&ペーストできます。

    それでは、Woodlands CabinゲームオブジェクトをWoodsのCabinと同じ位置に配置してから、そのサイズを調整します。

  5. Hierarchyで Cabin in the Woods を探し、これを選択します。

  6. InspectorのTransform コンポーネントで、 Gear アイコンをクリックして Copy Component を選択します。

  7. Hierarchyで検索を削除し、次に Woodlands Cabin ゲームオブジェクトを選択します。

  8. InspectorのTransform コンポーネントで、 歯車 アイコンをクリックして Paste Component Values を選択します。

    Woodlands Cabinの中にCubeの形が見えるはずで、もしなければ、Hierarchyで選択し、マウスをSceneビューに置きながら'F'を押します。次に、Woodlands Cabinを、Cabinに合わせます。

  9. Moveツール、RotateツールScaleツール を使い、Woodlands Cabinのゲームオブジェクトを、Woods Meshの中のCabinを覆うように合わせます。

  10. Inspectorで Mesh Renderer を無効にして、見えなくします。

    次に、AkEnvironmentコンポーネントと、残るRigidbodyを、追加します。

  11. Add Component をクリックし、 AkEnvironment を検索して選択します。

  12. AkEnvironmentコンポーネントの中の、 Add Rigidbody をクリックします。

    最後に、AuxBus Nameをアサインしてください。ここでは、ルームデザインがある程度似ているPineForest_HutのAuxiliary Busを使います。

  13. AuxBus Nameで、 Auxiliary Busses > Default Work Unit > Master Audio Bus > World > AUX > Region_PineForest を選択し、 PineForest_Hut を選択し、 OK をクリックします。

    この実装を、Profilerを使ってテストしてください。

  14. WwiseでLayoutsを選択し、Profilerを選択します。

    Playerを動かしてTriggerの中に入れるので、Playerサウンドだけが見えるように検索してください。プロファイリングを始める前に、フィルターを設定してPlayerサウンドだけを観察できるようにします。

  15. Advanced Profilerの Filter を、 Actor-Mixer Hierarchy > Default Work Unit > World > Player Work Unitに設定します。

  16. ゲームに Remote Connect で接続してシーンを Play し、 Woodlands Cabin まで走っていき、 ボックスをアタック します。

    Advanced Profilerを見ると、Player_WeaponImpactのEventが、WoodlandsのAux Busと、PineForest_HutのAux Busの、両方に送っているのが分かります。

    Woodlands Cabinの小部屋をシミュレーションするために、PineForest_HutのAux Busだけに送るようにします。AkEnvironmentコンポーネントの中のExclude Others機能を使えば、このAkEnvironmentのサウンドが、ほかのAkEnvironmentのTriggerに送られるのを防止できます。

  17. Unityで ESC を押してWAGのメニューを開き、再び Play をクリックしてPlayモードを終了させます。

  18. InspectorのAkEnvironmentで、 Exclude Others を有効にします。

  19. Playモードに入り 、Wwiseで Reconnect…をクリックします。

  20. Woodlands Cabinに入り、もう一度 ボックスをアタック します。

    Advanced Profilerを見ると、Player_WeaponImpactのEventが、Woodlands CabinのAux Busだけに送るようになっているのが分かります。


このページはお役に立ちましたか?