Wwise SDK 2022.1.18
|
The Wwise Authoring API is accessible through different protocols and APIs:
AK::Wwise::Plugin::Host::WaapiCall()
. Refer to Using the Wwise Authoring API in Wwise Plug-ins.WAMP and HTTP protocols can be used with a variety of languages, such as C++, C#, JavaScript, Python, and other languages with HTTP or WebSocket support.
Note: WAMP is an open standard WebSocket subprotocol that provides unified application routing. WAMP implementations are available in the most popular programming languages. Read more about WAMP at https://wamp-proto.org. |
Note: WAMP provides the best performance and experience because it reuses the same WebSocket connection for the whole session and provides bidirectional communications. |
In summary, here are the features supported by the protocols:
API Feature | WAMP | HTTP POST | AK::Wwise::Plugin::Host::WaapiCall() |
Remote Procedure Calls Allows to call functions remotely on Wwise authoring Refer to Wwise Authoring API Reference | Supported | Supported | Supported |
Publish & Subscribe Allows to receive notifications when changes occur in Wwise authoring. | Supported | Not Supported | Not Supported |
Optimal performance | Yes | No | Yes |
If you wish to use WAMP as the protocol for WAAPI, several options exist. WAMP Implementations are available across different programming languages. You will be able to find a list of existing implementations on wamp-proto.org.
However, some of these implementations are more difficult or unfriendly to use. Since WAAPI only uses a subset of the features available in WAMP, and to ease the use of WAAPI, we implemented abstraction layers over some of the implementations available. Here is a table that lists our recommendations for the most popular languages.
Language | Recommendation | ||
C++ (Recommended) | Use AkAutobahn AkAutobahn is a fork of Autobahn C++, with reduced dependencies, and provides a simpler interface and high performance. Difficulty: Requires intermediate C++ programming skills.
| ||
C# (Recommended) | Use WaapiClientCore or WaapiClientJson You have the choice of:
Difficulty: One of the easiest way to use WAAPI. Requires beginner C# programming skills. | ||
JavaScript/TypeScript with the most recent Node.js LTS (Recommended) | Use waapi-client JS waapi-client is an abstraction layer over Autobahn JS. It adds promises and async/await support, and only expose the required WAMP functionality. Please note that waapi-client also includes the TypeScript bindings. Difficulty: Requires beginner to intermediate JavaScript programming skills. | ||
JavaScript with Browser | Use autobahn-browser autobahn-browser is a WAMP implementation ready to use in a browser. Difficulty: Requires intermediate JavaScript & Web programming skills. | ||
Python 3.7+ (Recommended) | Use waapi-client Python waapi-client is an abstraction layer over Autobahn Python. It offers a greatly simplified usage and only exposes the required WAMP functionality. Difficulty: One of the easiest way to use WAAPI. Requires only beginner Python programming skills. | ||
Other languages | Use one of the WAMP implementations listed at https://wamp-proto.org/ or use WAAPI with HTTP directly. |
Refer to WAAPI Samples.
Des questions ? Des problèmes ? Besoin de plus d'informations ? Contactez-nous, nous pouvons vous aider !
Visitez notre page d'AideEnregistrez votre projet et nous vous aiderons à démarrer sans aucune obligation !
Partir du bon pied avec Wwise