目次

インテグレーションコードをビルドする

Wwise-UnityインテグレーションはC#の薄いレイヤで、ネーティブWwise APIをコールします。全プラットフォーム用にビルドされた状態で提供されます。多くの場合、Integrationプラグインの再ビルドは不要です。ただしソースコードがある場合はカスタム化して、ネーティブサウンドエンジンにカスタム変更を実装させたり、サウンドエンジンとのインターフェースとなるC++コードを修正したりすることもできます。これは、C++の知識がある程度あるプログラマが行うべき作業です。

手順

  1. Wwise Launcherを使って、これからビルドする各プラットフォームのWwise SDKをインストールする。必ずログオフして、再びログオンすること。
  2. WwiseインテグレーションをUnityプロジェクトに追加すると、使用するOS(WindowsまたはMac)のソース(source)zipがLauncherによってUnityプロジェクトにインストールされるので、そのソースzipの場所を見つける(zipの名前の最後に_Src.zipと付く)。
  3. ビルドする対象プラットフォームがWindowsやMac以外の場合は、そのソースzipの場所を見つける。
  4. このIntegrationをビルドするための前提条件を確認する。詳細は 前提条件 を参照。
  5. 全てのソースzipを、同じフォルダに解凍する。詳細は Unityプロジェクトのインテグレーションの、インストールとアップグレード を参照。
  6. ビルドプロセスを、次の2種類のメソッドのいずれかで起動する: Consoleユーティリティを使ってビルドする または Integrated Development Environment (IDE)を使ってビルドする.
  7. ビルドが終了するまで待つ。ビルドが成功すれと、 Deployment フォルダの下のプラグインやAPIバインディングが更新されるか、今までなければ新しく作成される。

Notes

  • ビルド中に警告、エラー、重要なメッセージなどがあれば、 Build Log の詳細ログメッセージを確認してモニターできます。

Integrationを自分でビルドするための要件:

プラットフォーム 必要なコンポーネント
All platforms
  • Unity 5 (PersonalまたはPro)
  • 対象プラットフォーム用の互換性のあるWwise SDK。 リリースノート - Wwise Unity Integration 2019.1.0.6947.1394 を参照してください。
  • 対象プラットフォーム用の互換性のあるプラットフォームSDK。 Wwise SDKヘルプ(Reference Materials > Platform Requirementsのセクション)。
  • Python 2.7.xまたは3.x、システム実行パス内のPhthon実行フォルダと共に。
Android
  • Android SDK: 32bitはAPI 14以上、64bitはAPI 21以上。
  • Android NDK r17c.
  • Apache Ant 1.8.4.
  • Wwise SDKへのパスにホワイトスペースを含めてはならない。
  • Unityプロジェクトルートへのパスにホワイトスペースを含めてはならない。
  • 環境変数:
    • ANDROID_HOME は、Android SDKルートフォルダをポイントするべき。
    • ANDROID_NDK_HOME は、Android NDKルートフォルダをポイントするべき。
    • NDKROOT は、Android NDKルートフォルダをポイントするべき。
    • ANT_HOME は、Apache Antルートフォルダをポイントするべき。
iOS
  • Xcode 9以上。
  • iOS用のWwise SDKと、それを指す WWISESDK 環境変数
Linux
  • Build-essential (sudo apt-get install build-essential)
  • SDL2 (SDL2ライブラリのインストールについては Linux用にビルドする 参照)
  • Linux用のWwise SDKと、それを指す WWISESDK 環境変数
Mac
  • Xcode 9以上。
  • Mac用のWwise SDKと、それを指す WWISESDK 環境変数
PS4 Visual Studio 2015 以上。
Windows Visual Studio 2015 以上。
Windows Store Visual Studio 2015 以上。
Xbox One Visual Studio 2015 以上。

ソースパッケージをインストールするには

ソースパッケージを解凍します。これによって、ソースパッケージと求めているプラットフォームのWwise SDKインストールだけを使って、Integrationパッケージのコンテンツを再ビルドして生成できます。あるいは、圧縮されていないWwiseフォルダ内のコンテンツと、UnityプロジェクトのAssetsフォルダにあるインポート済みIntegrationユニティパッケージをマージする方法もあります。ただし不必要な中間ファイルがAssetsフォルダに生成されてしまうことがあり、これはマニュアル操作で排除しなければなりません。

インストールしたインテグレーションパッケージのフォルダ構成

  • StreamingAssets: SoundBankの自動デプロイに使う 1つのプラットフォームのプロジェクトでSoundBankをデプロイする のフォルダ。
  • Wwise: 最上位フォルダ。
    • Deployment: アプリケーションで使うメインのIntegrationファイル。
      • API: C++ から C# へのバインディングファイル。これがネーティブWwise SDKの変換である。
      • Dependencies: サードパーティのUnityスクリプトで、一部プラットフォームで必要となる。
      • Components: 直接使えるUnityコンポーネントスクリプトで、カスタム設定コンポーネントの例として活用できる。
      • Plug-ins: 様々なコンフィギュレーションやデバグシンボルデータベースのUnityプラグインライブラリ。
        • Platform
          • Architecture: マルチアーキテクチャプラットフォームで複数のアーキテクチャにシェアされるファイル。
    • Documentation: Integrationに関する完全なドキュメント。
    • Editor: WwiseUnityIntegrationで使われるEditor WindowとInspectorの全て。
    • Tools: 追加機能を提供するアプリケーションツール。

インストールしたソースパッケージのフォルダ構成

  • Wwise: 最上位フォルダ。
    • AkSoundEngine: Integrationをビルドするのに必要なソースコードとIDCプロジェクトを、プラットフォーム別に整理したもの。
      • Common: 全ての対応済みプラットフォームで使われるソースコードやビルドスクリプト。
      • Platform: 対象プラットフォームのIDEソリューションまたはプロジェクト、ソースコード、そしてそのプラットフォーム専用のビルドスクリプト。
    • Integration/Assets/Wwise/Deployment: アプリケーションで使うメインのIntegrationファイル。
      • API: APIバインディングのルートレベルのフォルダ。
        • Generated: SWIGバインディングの段階で生成されるAPIバインディングファイル。
        • Handwritten: 手書きのAPIバインディングファイル。
      • Components: 直接使えるファクトリ版Unityコンポーネントスクリプトで、カスタム設定コンポーネントの例として活用できる。
      • Plugins: 全てのWwiseプラグイン(AkSoundEngineビルド後に書かれたもの)。
        • <platform>: 該当するプラットフォームフォルダ。
          • <architecture>: アプリケーションプラットフォームのアーキテクチャ。

Consoleユーティリティを使ってビルドする

Integrationを、 Wwise\AkSoundEngine\Common\BuildWwiseUnityIntegration.py にあるビルドスクリプトを使ってコマンドからビルドできます。これは連続するインテグレーションに便利です。利用方法や例を見るには、現在のワーキングディレクトリがスクリプトの親フォルダであれば、コンピュータにコマンドコンソールを1つ入力します:

python BuildWwiseUnityIntegration.py -h

Integrated Development Environment (IDE)を使ってビルドする

以下の下にあるWwise Unity Integrationソースパッケージの中にあります:

WwiseUnityIntegration_version_platform_Src.zip\Wwise\AkSoundEngine\YourPlatform

このソリューション(またはXcodeプロジェクト)で、対象プラットフォーム用のIntegrationをサポート済みIDEでビルドできます。

Mac または iOSプラットフォーム用にXcodeでビルドする

コマンドラインからインテグレーションをビルドする場合は、 $WWISESDK 変数で設定されるもの、または -w オプションを使ってビルドスクリプトに提供されるものに基づいて、自動的に WWISESDK パスがXcodeに対して提供されます。ただしXcode IDEを使う場合は、WWISESDKパスをマニュアル設定する必要があります。これをするにはXcodeプロジェクトをMacまたはiOSのプラットフォーム用に開き、プロジェクトナビゲータで AkSoundEngine{platform} プロジェクトを選択します。Build Settingsページを選択する。ページの最後のUser-Definedセクションに WWISESDK 設定キーがあります。WWISESDK のパスを設定値として入力して、(ex: /Users/myUser/Wwise/SDK )に対するインテグレーションをビルドします。

Linuxプラットフォーム用にビルドする

以前はpremake5で生成されたmakefileが含まれています。ソースからLinuxプラグインをビルドするには、以下のコマンドを端末に入力するだけです:

  • cd <Integration source location>/AkSoundEngine/Linux
  • make config=<config>

<config>が、debug_x32, profile_x32, release_x32, debug_x64, profile_x64, またはrelease_x64です。その結果のプラグインは<Integration source location>/Deployment/Plugins/Linuxにあります。

新ライブラリをデプロイする

その結果のバイナリはWwise\Deployment\Plugins\[Platform]にあります。Assets\Wwiseディレクトリのソースが解凍してなければ、そのフォルダの新バイナリをコピーして、プロジェクトのAssetsディレクトリにある該当フォルダに入れます。

Under the hood

インテグレーションコードをビルドするためのソースをパッケージングする前に、SWIGを使ってWwise SDK用のAPIバインディングをUnity内で生成します。多くのユーザは、WwiseでUnityを使う上でSWIGは必要ありません。上級ユーザが、インテグレーションコードをビルドするために、変換されたAPIを含むWwise for Unityソースにアクセスする場合でも、SWIGをインストールしたり使用したりする必要ありません。唯一の例外が、サウンドエンジンを変更する場合や、サウンドエンジンとのインターフェースとなるC++コードを修正したりする場合です。このような稀なケースでは、サポート担当に連絡してから進めることを推奨します。

ビルドプロセスで以下のタスクが実行されます:

  1. Wwise SDKライブラリはUnityプラグインとして、またはWindowsのダイナミックライブラリとして、またはMac OS Xのロード可能なバンドルとして(.bundle) 、またはiOSのスタティックライブラリとして (.a)、またはAndroidの共有ライブラリとして、1つのライブラリにラップされます。Deploymentフォルダに直接ビルドされます。フォルダ構造は、 Unityプロジェクトのインテグレーションの、インストールとアップグレード を参照してください。
参照:
Wwise Unity Integrationに対してFri Mar 29 16:14:31 2019に生成されました。  doxygen 1.6.3