This Unity Project demonstrates key features of the Tezos SDK For Unity within an RPG Sample Game.
- Download this repo (*.zip or *.git)
- Download the Unity Editor
- Open this repo in the Unity Editor
- Enjoy!
- Web Documentation - Overview of the "Tezos SDK For Unity"
- Unity Project - ./Unity/
- Unity Version - Version
- Unity Target - Standalone MAC/PC
- Unity Rendering - Universal Render Pipeline (URP)
- Unity Menus - See
Unity → Window → Tezos → RPG Sample Game → Open ReadMe
for additional orientation - Unity Dependencies - The Unity Package Manager resolves all project dependencies from the Manifest.json including the Tezos SDK For Unity. No further action is required
This Unity Project is featured in the following videos.
Tezos SDK For Unity - Authentication | Tezos SDK For Unity - NFTS |
---|---|
![]() |
![]() |
Scene01_IntroMenu | Scene02_Game |
---|---|
![]() |
![]() |
This project showcases several key features and use-cases for the "Tezos SDK For Unity". Here are highlights.
Authentication
Players connect to the blockchain with a Tezos-compatible mobile wallet. For this RPG sample game, authentication unlocks faster character movement.
To see this feature in action, play the Scene01_IntroMenu
Scene. The Scene01_IntroMenu.cs class provides a full demonstration. Here is partial snippet.
// Store reference for convenience
ITezosAPI tezos = TezosSingleton.Instance;
// Determines if the user is authenticated
if (!tezos.HasActiveWalletAddress())
{
// Makes a call to connect with a wallet
tezos.ConnectWallet();
}
NFTs
Players check ownership of a given NFT. For this RPG sample game, NFT ownership unlocks secret walking pathways in the game world.
To see this feature in action, play the Scene01_IntroMenu
Scene. The Scene01_IntroMenu.cs class provides a full demonstration. Here is partial snippet.
// Setup
string demoNFTAddress = "KT1BRADdqGk2eLmMqvyWzqVmPQ1RCBCbW5dY";
int demoTokenId = 1;
// Store reference for convenience
ITezosAPI tezos = TezosSingleton.Instance;
// Returns the address of the current active wallet
string activeWalletAddress = tezos.GetActiveWalletAddress();
// Determines if the user account owns a given Nft
bool hasTheNft = tezos.IsOwnerOfToken(
activeWalletAddress,
demoNFTAddress,
demoTokenId);
if (hasTheNft)
{
// Unlock special game features
}