Experience our multichain game demo leveraging In-App Wallets and Account Abstraction built in three weeks - Web3 Warriors.
Build games for WebGL, Desktop, and Mobile using 1000+ supported chains, with various login options!
| Wallet Provider | WebGL | Desktop | Mobile |
|---|---|---|---|
| In-App Wallet (Email, Phone, Socials, Custom) | ✔️ | ✔️ | ✔️ |
| Ecosystem Wallet (IAW w/ partner permissions) | ✔️ | ✔️ | ✔️ |
| Private Key Wallet (Guest Mode) | ✔️ | ✔️ | ✔️ |
| Wallet Connect Wallet (400+ Wallets) | ✔️ | ✔️ | ✔️ |
| MetaMask Wallet (Browser Extension) | ✔️ | — | — |
| Smart Wallet (Account Abstraction) | ✔️ | ✔️ | ✔️ |
✔️ Supported ❌ Not Supported — Not Applicable
- Download: Head over to the releases page and download the latest
.unitypackagefile. - Explore: Try out
Scene_Playgroundto explore functionality and get onboarded. - Learn: Explore the Unity v5 SDK Docs and the .NET SDK Docs to find a full API reference.
Notes:
- Tested on Unity 2021.3+, 2022.3+, Unity 6 Preview. We recommend using 2022 LTS.
- Newtonsoft and EDM4U are included utilities; deselect if already installed to avoid conflicts.
- If using .NET Framework and encountering
HttpUtilityerrors, createcsc.rspwith-r:System.Web.dllunderAssets. - Use version control and test removing duplicate DLLs if conflicts arise.
- Build Settings: Use
Smaller (faster) Builds/Shorter Build Time. - Player Settings: Use IL2CPP over Mono when available.
- Stripping Level: Set
Managed Stripping LeveltoMinimal(Player Settings>Other Settings>Optimization). (Generally not a hard requirement unless using WalletConnect as a wallet provider option.)
- WebGL Template: None enforced, feel free to customize!
- Compression Format: Set to
Disabled(Player Settings>Publishing Settings) for final builds. - Testing WebGL Social Login Locally: Host the build or run it locally with
Cross-Origin-Opener-Policyset tosame-origin-allow-popups.
Example setup for testing In-App or Ecosystem Wallet Social Login locally (no longer required with Unity 6 Web, can use Build & Run):
// YourWebGLOutputFolder/server.js
const express = require("express");
const app = express();
const port = 8000;
app.use((req, res, next) => {
res.header("Cross-Origin-Opener-Policy", "same-origin-allow-popups");
next();
});
app.use(express.static("."));
app.listen(port, () =>
console.log(`Server running on http://localhost:${port}`)
);
// run it with `node server.js`No action needed for hosted builds.
- EDM4U: Comes with the package, resolves dependencies at runtime. Use
Force ResolvefromAssets>External Dependency Manager>Android Resolver. - Redirect Schemes: Set custom schemes matching your bundle ID in
Plugins/AndroidManifest.xmlor equivalent to ensure OAuth redirects.
See https://portal.thirdweb.com/unity/v5/migration-guide
For any questions or support, visit our Support Portal.
Thank you for trying out the Thirdweb Unity SDK!

