Wwise SDK 2019.1.11
|
Wwise Authoring API (WAAPI) は、以下のプロトコルやAPIからアクセスできます:
AK::Wwise::IPluginPropertySet::WaapiCall()
です。Wwise プラグインでWwise Authoring APIを使用する を参照してください。WAMPやHTTPのプロトコルと合わせて使える言語は、C++、C#、JavaScript、Pythonなど複数あり、ほかにもHTTPやWebSocket対応の言語も使えます。
注釈: WAMPは、オープンスタンダードのWebSocketサブプロトコルで、統一アプリケーションルーティングを提供します。WAMPのインプリメンテーションは、広く使われているプログラミング言語で利用できます。WAMPの詳細は https://wamp-proto.org を参照してください。 |
注釈: WAMPは、セッションを通して同じWebSocketコネクションを再利用し、二方向性コミュニケーションを提供するので、最も良いパフォーマンスとエクスペリエンスを提供します。 |
これらのプロトコルがサポートする機能を、下表にまとめました:
APIの機能 | WAMP | HTTP POST |
AK::Wwise::IPluginPropertySet::WaapiCall() |
Remote Procedure Calls Wwiseオーサリングのファンクションをリモートでコールする |
対応 | 対応 | 対応 |
Publish & Subscribe Wwiseオーサリングで変化があると、ノティフィケーションを受け取る。 |
対応 | 非 対応 | 非 対応 |
最適化されたパフォーマンス | 済 | 未 | 済 |
WAAPIのプロトコルとしてWAMPを使う場合に、いくつかの選択肢があります。WAMPによるインプリメンテーションは、数種類のプログラミング言語で可能です。 既存のインプリメンテーションの一覧は、 wamp-proto.org にあります。
ただし、インプリメンテーションによっては、難しかったり、使いづらかったりします。WAAPIでは、WAMPの提供する機能サブセットの1つしか使わないので、WAAPIを使いやすくするためにも、使用可能な一部インプリメンテーションの抽象化レイヤ―を用意しました。下表は、よく使われる言語の推奨条件をまとめたものです。
言語 |
推奨 |
||
C++ (推奨) |
AkAutobahnを使う AkAutobahnは、Autobahn C++のforkで、依存関係を軽減し、シンプルなインターフェースと改善されたパフォーマンスを提供します。 難易度: 中級のC++ プログラミング知識が必要。
|
||
C# (推奨) |
WaapiClientCore または WaapiClientJsonを使う どちらかを選択:
難易度: WAAPIを使うのに、最も簡単な方法の1つ。初級のC::プログラミング知識が必要。 |
||
JavaScript/TypeScriptと、 Node.js (推奨) |
waapi-client JSを使う waapi-clientは、Autobahn JSの抽象化レイヤ―です。promisesやasync/awaitの対応が追加され、必要なWAMPファンクションのみを公開します。なお、waapi-clientには、TypeScriptバインディングも含まれます。 難易度: 初級から中級のJavaScriptプログラミング知識が必要。 |
||
JavaScriptと、Browser |
autobahn-browserを使う autobahn-browserは、ブラウザですぐに使えるWAMPインプリメンテーションです。 難易度: 中級のJavaScriptとWebプログラミングの知識が必要。 |
||
Python 2.7 |
Autobahn Pythonを使う Autobahn Pythonは、使いづらいです。設定要件が複雑で、非同期プログラミングの知識も必要です。pythonプロジェクトの設定手順や、依存関係については、hello-wwise-wampサンプルを参照してください。
難易度: 上級のPythonプログラミング知識が必要。 |
||
Python 3.6+ (推奨) |
waapi-client Pythonを使う waapi-clientは、Autobahn Pythonの抽象化レイヤ―です。使い方が大幅に簡素化され、必要なWAMPファンクションのみを公開します。 難易度: WAAPIを使うのに、最も簡単な方法の1つ。初級のPythonプログラミング知識だけが必要。 |
||
その他の言語 |
https://wamp-proto.org/ 記載のWAMPインプリメンテーションの1つを使うか、WAAPIに直接HTTPを使います。 |
WAAPI サンプル を参照してください。