SuiPlay SDK for Unreal Engine
The OriginByte Unreal toolset for game developers on Sui
- Get SUI objects
- Call Sui Move contracts
- Sign, Batch and Execute Transactions,
- Transfer, Split and Merge SUI coins and objects
- Mint Origin Byte NFTs
- Restore Ed25519 Keypairs from BIP39 mnemonics and Create new Keypairs
- Tested on Windows desktop with Sui version 1.13.0 and Nft Protocol 1.2.0 on Testnet
- Works with Unreal Engine 5
Check the Sample Level and the Blueprint Nodes in the Level Blueprint. The
SuiUnrealSDKCore
module contains all the high level functionalities. Both C++ and Blueprints are supported.Install VaRest Plugin from the Marketplace, and copy all plugins found in the Plugins folder (
Bip39UE, LibsodiumUE, SuiUnrealSDKCore
)Because of the limitations of Blueprints, Sui JSON API method signatures use signed integer types instead of unsigned counterparts (
int32
and int64
types instead of uint32
and uint64
). For most use-cases we believe they provide sufficient range of values. If you run into problems, please open a query on GitHub.
Blueprint:

C++:
auto Client = RpcClient(Endpoint);
FRpcSuccessDelegate RpcSuccessDelegate;
RpcSuccessDelegate.BindLambda([OnResult](const FJsonRpcValidResponse& RpcResponse) {
UE_LOG(LogTemp, Log, TEXT("Response received."));
});
FObjectDataOptions Options;
Client.GetObject(ObjectId, Options, RpcSuccessDelegate);


Call Mint Devnet NFT move contract:

Sign And Execute Transactions:


The SDK Plugin currently depends on the VaRest plugin available from the marketplace. All the other dependencies can be found in the
Plugins
folder.- More platform support (iOS, Android, Mac)
- Streaming RPC client, Event subscription
- More RPC APIs and type bindings
- More samples
- More NFT protocol bindings for Unreal Engine
- Higher level APIs, easy-to-use Blueprint nodes
Last modified 3mo ago