B3 Unity SDK
Integrate your Unity games into basement with the B3 Unity SDK, which lets you easily access all of the launcher functionalities from within Unity as simple functions
Features
The B3 Unity SDK provides comprehensive integration capabilities for Unity developers:
Installation and Usage
Download the SDK
Head over to the GitHub repository and download the latest release.
Install to Unity Project
Follow the setup guide instructions on GitHub to install the SDK to your Unity Project.
The GitHub repository contains detailed installation instructions and setup requirements.
Initialize the SDK
After installing the SDK and following the setup guide, you'll be able to easily call all the APIs as functions.
Your Unity project is now ready to integrate with the B3 launcher!
Code Examples
Trigger Rules Engine
Here's an example of how to trigger the rules engine from within your Unity game:
csharpB3LauncherClient.TriggerRulesEngine(new B3LauncherClient.TriggerRulesEngineBody { launcherJwt = B3Instance.Instance.SessionJWT ?? jwtInput.text, trigger = "open-tip-modal", otherWallet = otherWalletInput.text, }, null);
Session Management
The SDK automatically handles user sessions:
csharp// Access the current session JWT string sessionToken = B3Instance.Instance.SessionJWT; // Check if user is authenticated if (B3Instance.Instance.IsAuthenticated) { // User is logged in and ready to interact with B3 services Debug.Log("User authenticated successfully"); }
API Integration
The Unity SDK provides seamless access to all B3 launcher APIs:
Traditional callback pattern for handling API responses:
csharpB3LauncherClient.SomeAPICall(requestData, (response) => { // Handle response Debug.Log("API call completed"); });
Modern async/await pattern for cleaner code:
csharppublic async void CallAPI() { var response = await B3LauncherClient.SomeAPICallAsync(requestData); // Handle response Debug.Log("API call completed"); }
Handle launcher events in WebGL builds:
csharp// Register webhook handlers B3Instance.Instance.OnWebhookReceived += HandleWebhook; private void HandleWebhook(WebhookData data) { // Process incoming webhook data Debug.Log($"Received webhook: {data.type}"); }
Next Steps
Support
For technical support, bug reports, or feature requests, please visit the GitHub repository or reach out to our developer community.