デフォルトで、Wwise Unity Integrationは対象Wwiseプロジェクトに設定された全てのプラットフォームにデフォルトの名前が付いているものとします。プラットフォームに別の名前を付ける場合や、ベースプラットフォーム用に複数のカスタムプラットフォームを設定する場合は、対応できるようにC#スクリプトを作成する必要があります。
| Note: このページでは、SoundBankが生成されるサブフォルダの名前がプラットフォームと同じものとしています。なお、そうでない場合は |
デフォルトのプラットフォームresolveスクリプトはUNITY_PROJECT_ROOT/Assets/Wwise/Deployment/Components/AkBasePathGetter.csにあります。GetPlatformNameメソッドに見られるように、全てのプラットフォームのデフォルト名がこのファンクションで返却されます。自分で設定したプラットフォーム名を使いたい場合は、以下の手順に従います:
UNITY_PROJECT_ROOT/Assets/Wwiseフォルダの外に作成して、名前をAkCustomPlatformNameGetter.csとする。AkCustomPlatformNameGetterクラスを作成する。 AkCustomPlatformNameGetterクラス内で、GetPlatformNameという公開された静的ファンクションを追加して文字列 を返す。 この例は、iOSプラットフォームのユースケースだけをカバーします。iOSのベースプラットフォーム用に3つの異なるカスタムプラットフォームを用意する場合を考えます:iPod用、iPhone用、iPad用にそれぞれ1つずつとします。
UNITY_PROJECT_ROOT/Assets, and name it AkCustomPlatformNameGetter.csにC#スクリプトを作成する。このファイルのコンテンツ例を以下に示す: public class AkCustomPlatformNameGetter { static public string GetPlatformName() { #if UNTIY_IOS switch(UnityEngine.iOS.Device.generation) { case UnityEngine.iOS.DeviceGeneration.iPhone: case UnityEngine.iOS.DeviceGeneration.iPhone3G: case UnityEngine.iOS.DeviceGeneration.iPhone3GS: case UnityEngine.iOS.DeviceGeneration.iPhone4: case UnityEngine.iOS.DeviceGeneration.iPhone4S: case UnityEngine.iOS.DeviceGeneration.iPhone5: case UnityEngine.iOS.DeviceGeneration.iPhone5C: case UnityEngine.iOS.DeviceGeneration.iPhone5S: case UnityEngine.iOS.DeviceGeneration.iPhone6: case UnityEngine.iOS.DeviceGeneration.iPhone6Plus: case UnityEngine.iOS.DeviceGeneration.iPhoneUnknown: return "iPhone"; case UnityEngine.iOS.DeviceGeneration.iPodTouch1Gen: case UnityEngine.iOS.DeviceGeneration.iPodTouch2Gen: case UnityEngine.iOS.DeviceGeneration.iPodTouch3Gen: case UnityEngine.iOS.DeviceGeneration.iPodTouch4Gen: case UnityEngine.iOS.DeviceGeneration.iPodTouch5Gen: case UnityEngine.iOS.DeviceGeneration.iPodTouchUnknown: return "iPod"; case UnityEngine.iOS.DeviceGeneration.iPad1Gen: case UnityEngine.iOS.DeviceGeneration.iPad2Gen: case UnityEngine.iOS.DeviceGeneration.iPad3Gen: case UnityEngine.iOS.DeviceGeneration.iPadMini1Gen: case UnityEngine.iOS.DeviceGeneration.iPad4Gen: case UnityEngine.iOS.DeviceGeneration.iPadAir1: case UnityEngine.iOS.DeviceGeneration.iPadMini2Gen: case UnityEngine.iOS.DeviceGeneration.iPadMini3Gen: case UnityEngine.iOS.DeviceGeneration.iPadAir2: case UnityEngine.iOS.DeviceGeneration.iPadUnknown: return "iPad"; default: return "iPhone"; } #endif return string.Empty; } }
| Note: カスタムGetPlatformNameメソッドが空の文字列を返す場合は、現在アクティブなUnityプラットフォームのデフォルトプラットフォーム名が使われます。 |
UNITY_PROJECT_ROOT/Assets/StreamingAssets/Audio/GeneratedSoundBanks</ttにコピーする。Unityで、ゲームをiOSプラットフォーム用にビルドする。これ以降はデバイスの種類に応じて異なるSoundBankセットが採用されることになる。
1.6.3