Skip to content

This repo is built by Wisdom Labs providing an Unreal Engine SDK on the Algorand blockchain.

Notifications You must be signed in to change notification settings

Wisdom-Labs/Algorand-Unreal-Engine-SDK

Repository files navigation

Algorand Unreal Engine Plugin

Official Unreal Engine plugin for Algorand Blockchain Platform.

If you are looking for a repo for this c++ sdk, check this repository.

This plugin provides the functionallity for building different types of transactions and managing wallets on the Algorand blockchain.

📙 1. Overview:

Algorand Unreal Engine Plugin

For indepth documentation on the overview, setup and usage of this plugin check here: Doc

For indepth video demo on using the plugin watch here: Video

This UE plugin includes:

  • Root Folder: Unreal-Plugin - Put this plugin in your new or existing project to utilize.
  • Example Folder: Unreal Plugin Example Project - Use this project to start your new game or demo/test Algorand System

This sdk contains a setting option to set RPC Info.

  • RPC URL : You should set the Algorand node you want to work on with this url. setAlgoRpc("https://testnet-algorand.api.purestake.io/ps2");
  • RPC Port : Set port which can connect into server supporting algorand node with. setAlgoPort(0);
  • RPC TokenHeader : You should set Header to request apis according to algorand node type. setAlgoTokenHeader("x-api-key:bLcs4F2SyGY0InF9M6Vl9piFTIZ8Ww281OjKXyE1"); This param has a pair made of key and value.

RPC types you can select are like following:

👔 You should add token for above some urls and can reference this link.

📑 2. Prerequisites:

To use this UE plugin : ✅

In order to build project using Unreal Engine 5.0+, use a branch master.

⚙️ 3. Installation:

  1. In this Github repository, clone this repo with git command or download as a zip file type and rename cloned folder name AlgorandUnrealEngineSDK.
  2. You can find a folder called example, which is our test project.
  3. Then you should create a folder called Plugins/Algorand on example/unreal-algorand-demo folder.
  4. You should copy all except for example folder on AlgorandUnrealEngineSDK folder to the Plugins/Algorand folder of our test project.

After you complete above action, this plugin path is example\unreal-algorand-demo\Plugins\Algorand.

  1. You should register the plugin name (Algorand) into Build.cs on the Source directory of out test project (example\unreal-algorand-demo) and rebuild your project.
    public UnrealAlgorandPlugin(ReadOnlyTargetRules Target) : base(Target)
    {
        PCHUsage = PCHUsageMode.UseExplicitOrSharedPCHs;
        
        PublicDependencyModuleNames.AddRange(new string[] { "Core", "CoreUObject", "Engine", "InputCore", "Algorand" });
    
        PrivateDependencyModuleNames.AddRange(new string[] {  });
    }

Right click on UnrealAlgorandPlugin.uproject on example/unreal-algorand-demo folder, and "Generate Visual Studio project files" - This process may take some time.

  1. Once finished, open your *.sln project or *.uproject file with Visual Studio or JetBrains Rider.

🧭 4. Modules reference

  • Algorand - entrypoint module, provides C++- & Blueprints- friendly interfaces for plugin's users. This module should be considered as the only module you need to depend on.
  • AlgorandAPI - This module is one to make api request and process its result and send it to entrypoint module.
  • Blockchain - This module contains core logic for building and signing txs from tx types and params.
  • Wallet - This module is one related to manage wallet and wallet connect provider.
  • Vertices - This module play an important role as an interface and router in connecting to our algorand c++ sdk (Vertices shared library).

🚀 5. Common Usage

UAlgorandUnrealManager stored on Algorand module should be used as the main entry-point for all Algorand-related actions.

Check our demo project made with this UE plugin.

About

This repo is built by Wisdom Labs providing an Unreal Engine SDK on the Algorand blockchain.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published