Wwise SDK 2024.1.1
|
コマンドアドオンを使い、Wwise Authoringの新しいコマンドを定義できます。各コマンドが、Wwiseによってトリガーされる外部プログラムの1つに関連付けられています。プログラムが実行されると、選択中のオブジェクトから派生する、事前に定義された様々な引数を受領します。
アドオンしたコマンドのトリガー方法は、以下の通り、いくつかあります:
アドオンしたコマンドを定義できるレベルが、いくつかあります:
注釈: IDのコンフリクトがある場合、最初にロードしたコマンドだけが登録されます。コマンドは、上記の順番でロードされます。 |
注釈: インスタレーションフォルダやユーザーデータディレクトリで指定したコマンドアドオンは、Wwise起動時にロードされます。プロジェクト下で指定したコマンドアドオンは、プロジェクトをロードするときにロードされます。 |
さらにWwiseでコマンドを実行する度に、WAAPIがサブスクライバーに対し ak.wwise.ui.commands.executed で通知し、選択されたオブジェクトをパスし、WAAPIリターンの設定に従います。 アドオンコマンドは実行するプログラムがなくても定義できるので、WAAPIクライアントで自分のコードを実行するためにパブリケーションイベントを使うこともできます。
コマンドの内容を以下のフィールドで定義します:
マシン固有の絶対パスを避けるために、 program
フィールドには、事前に定義された以下のディレクトリを使います。これらは、プログラムへの引数としてパスを送るために args
フィールドで使ったり、使用中のディレクトリを定義するために cwd
フィールドで使ったりすることもできます。
変数 | 参照先 |
---|---|
${CurrentCommandDirectory} | 現在のコマンドが定義されるディレクトリ。上記の通り、"Add-ons\\Commands"となるべきです。 |
${WwiseInstallRoot} | Wwiseインストールディレクトリ。 |
${WwiseInstallBin} | Wwise.exeディレクトリ。 |
${WwiseInstallAddons} | Windows: "${WwiseInstallRoot}\\Authoring\\Data\\Add-ons" macOS: "/Library/Application Support/Audiokinetic/Wwise <version>/Authoring/Data/Add-ons/Commands" |
${WwiseUserAddons} | Windows: "%APPDATA%\\Audiokinetic\\Wwise\\Add-ons" macOS: "$HOME/Library/Application Support/Audiokinetic/Wwise/Add-ons/Commands" |
${WwiseProjectRoot} | Wwiseプロジェクトディレクトリ。 |
${WwiseProjectAddons} | "${WwiseProjectRoot}\\Add-ons" |
${WwiseProjectOriginals} | "${WwiseProjectRoot}\\Originals" |
${WwiseProjectSoundbanks} | プラットフォーム別に生成されるサウンドバンクのディレクトリ。 |
args
フィールド(プログラム引数)では0から複数の変数まで使用できます。変数は選択したオブジェクトから情報を取得する方法を提供します。例えばオブジェクトIDを取得して引数として渡すことができます。変数は選択したオブジェクトからCustom Properties値などのプロパティ値をアクセスする方法も提供してくれます。Custom Propertiesについてさらに詳しく知るには、 カスタムプロパティの定義 を参照してください。
可能な変数の式の一覧で見るには、 Wwise Authoring Query Language (WAQL) リファレンス の Object Expressions セクションと Value Expressions セクションを参照してください。
複数を選択している場合、これらの変数がどのように解決されるかは、 startMode
を参照してください。
Examples:
変数 | 型 | 説明 |
---|---|---|
${id} | string | オブジェクトID(GUID)。 |
${name} | string | オブジェクト名。 |
${notes} | string | オブジェクトnotes。 |
${type} | string | オブジェクトタイプ。使用可能なタイプについては Wwiseオブジェクトリファレンス を参照。 |
${path} | string | プロジェクトのルートからのオブジェクトパス。例: '\\Actor-Mixer Hierarchy\\Default Work Unit\\Sound1' |
${filePath} | string | オブジェクトが入っているファイルへのパス。パスはWork Unitファイル、またはプロジェクトファイル。 |
${originalWavFilePath} | string | オリジナルWAVファイルへの絶対パス。これはSoundオブジェクトやAudio Sourceオブジェクトに限り、有効。 |
${convertedWemFilePath} | string | 変換されたwemファイルの絶対パス。選択肢からプラットフォームを指定。これはSoundオブジェクトやAudio Sourceオブジェクトに限り、有効。 |
${soundbankBnkFilePath} | string | SoundBankオブジェクトに関連する、生成されたSoundBankファイルの絶対パス。SoundBankオブジェクトに限り有効。 |
${workunitIsDirty} | boolean | Work UnitまたはProject(wprojファイル)がダーティである場合、つまり変更されているが保存されていない場合は、true。 |
${Volume} | string | Voice Volume。 |
${OutputBus.name} | string | Output Bus名。 |
新しいコマンドを作成するには、 コマンドアドオンの定義 に記載されたディレクトリの1つの下にJSONファイルを作成し、そのバージョンを2に指定します。 なお、このディレクトリには、複数のサードパーティがファイルを作成することができるので、注意してください。 ファイル名のコンフリクトの可能性を減らすために、ファイル名の命名規則として、次を推奨します: companyname_productname.json
例: mycompany_myproduct.json
上記と全く同じJSONコマンドコードを、WAAPI ak.wwise.ui.commands.register にパスすれば、現在のWwiseプロセスに新しいコマンドを追加できます。
なお、 ak.wwise.ui.commands.register で追加したコマンドは永続化されません。このWwiseプロセスが終了するまで、残ります。 次回は、再度登録する必要があります。
アドオンコマンドを使って、WAAPIスクリプトやプログラムを実行することができます。これを使えば、Wwise機能やプロジェクトデータにアクセスできます。WAAPIで何ができるかについては、 Wwise Authoring API (WAAPI)を使用する を参照してください。
Macでアドオンコマンドを実行するのに使うのは
. Any app, executable or script can be directly specified in program
.
例: mycompany_myproduct_forMac.json