Skip to content

Commit f1179d8

Browse files
committed
Merge branch 'v5' of https://github.com/thirdweb-dev/unity into v5
2 parents 056f436 + 7aa8665 commit f1179d8

File tree

1 file changed

+48
-62
lines changed

1 file changed

+48
-62
lines changed

README.md

+48-62
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,51 @@
11
![Thirdweb Unity SDK](https://github.com/thirdweb-dev/unity-sdk/assets/43042585/0eb16b66-317b-462b-9eb1-9425c0929c96)
22

3-
[<img alt="Unity Documentation" src="https://img.shields.io/badge/Unity-Documentation-blue?logo=unity&style=for-the-badge" height="30">](https://portal.thirdweb.com/unity/v5)
4-
[<img alt=".NET Documentation" src="https://img.shields.io/badge/.NET-Documentation-purple?logo=dotnet&style=for-the-badge" height="30">](https://portal.thirdweb.com/dotnet)
3+
<p align="center">
4+
<strong>All-In-One Cross-Platform Blockchain Unity SDK for Browser, Standalone, Mobile and Server Targets.</strong>
5+
</p>
6+
7+
<p align="center">
8+
<a href="https://portal.thirdweb.com/unity/v5">
9+
<img alt="Unity Documentation" src="https://img.shields.io/badge/Unity-Documentation-blue?logo=unity&style=for-the-badge" height="30">
10+
</a>
11+
<a href="https://portal.thirdweb.com/dotnet">
12+
<img alt=".NET Documentation" src="https://img.shields.io/badge/.NET-Documentation-purple?logo=dotnet&style=for-the-badge" height="30">
13+
</a>
14+
</p>
515

616
# Technical Demo
717

818
Experience our multichain game demo leveraging In-App Wallets and Account Abstraction built in three weeks - [Web3 Warriors](https://web3warriors.thirdweb.com/).
919

1020
![image](https://github.com/thirdweb-dev/unity-sdk/assets/43042585/171198b2-83e7-4c8a-951b-79126dd47abb)
1121

22+
# Features
23+
24+
This SDK provides a Unity-first integration of all [thirdweb](https://thirdweb.com) functionality, including but not limited to:
25+
26+
- Support for all target platforms, Unity 2022 & Unity 6.
27+
- First party support for [In-App Wallets](https://portal.thirdweb.com/connect/wallet/overview) (Guest, Email, Phone, Socials, Custom Auth+).
28+
- First party support for [Account Abstraction](https://portal.thirdweb.com/connect/account-abstraction/overview) (Both EIP-4337 & zkSync Native AA).
29+
- Instant connection to any chain with RPC Edge integration.
30+
- Integrated IPFS upload/download.
31+
- Easy to extend or wrap.
32+
- High level contract extensions for interacting with common standards and thirdweb contract standards.
33+
- Automatic ABI resolution.
34+
- Build on top of thirdweb's [.NET SDK](https://portal.thirdweb.com/dotnet) - unity package updates are typically updates to a single DLL/a file or two.
35+
- Get started in 5 minutes with a simple [ThirdwebManager](https://portal.thirdweb.com/unity/v5/thirdwebmanager) prefab.
36+
1237
# Supported Platforms & Wallets
1338

14-
**Build games for WebGL, Desktop, and Mobile using 1000+ supported chains, with various login options!**
39+
**Build games for Web, Standalone, and Mobile using 2000+ supported chains, with various login options!**
1540

16-
| Wallet Provider | WebGL | Desktop | Mobile |
17-
| ----------------------------------------- | :---: | :-----: | :----: |
18-
| **In-App Wallet** (Email, Phone, Socials, Custom) | ✔️ | ✔️ | ✔️ |
19-
| **Ecosystem Wallet** (IAW w/ partner permissions) | ✔️ | ✔️ | ✔️ |
20-
| **Private Key Wallet** (Guest Mode) | ✔️ | ✔️ | ✔️ |
21-
| **Wallet Connect Wallet** (400+ Wallets) | ✔️ | ✔️ | ✔️ |
22-
| **MetaMask Wallet** (Browser Extension) | ✔️ |||
23-
| **Smart Wallet** (Account Abstraction) | ✔️ | ✔️ | ✔️ |
41+
| Wallet Provider | Web | Standalone | Mobile |
42+
| ------------------------------------------------------------ | :---: | :-----: | :----: |
43+
| **In-App Wallet** (Guest, Email, Phone, Socials, Custom) | ✔️ | ✔️ | ✔️ |
44+
| **Ecosystem Wallet** (IAW w/ partner permissions) | ✔️ | ✔️ | ✔️ |
45+
| **Private Key Wallet** (Ephemereal, good for testing) | ✔️ | ✔️ | ✔️ |
46+
| **Wallet Connect Wallet** (400+ Wallets) | ✔️ | ✔️ | ✔️ |
47+
| **MetaMask Wallet** (Browser Extension) | ✔️ |||
48+
| **Smart Wallet** (Account Abstraction: 4337 & ZkSync Native) | ✔️ | ✔️ | ✔️ |
2449

2550
<sub>✔️ Supported</sub> &nbsp; <sub>❌ Not Supported</sub> &nbsp; <sub>— Not Applicable</sub>
2651

@@ -30,63 +55,24 @@ Experience our multichain game demo leveraging In-App Wallets and Account Abstra
3055
2. **Explore:** Try out `Scene_Playground` to explore functionality and get onboarded.
3156
3. **Learn:** Explore the [Unity v5 SDK Docs](https://portal.thirdweb.com/unity/v5) and the [.NET SDK Docs](https://portal.thirdweb.com/dotnet) to find a full API reference.
3257

33-
**Notes:**
58+
## Miscellaneous
3459

35-
- Tested on Unity 2021.3+, 2022.3+, Unity 6 Preview. We recommend using 2022 LTS.
36-
- Newtonsoft and EDM4U are included utilities; deselect if already installed to avoid conflicts.
60+
- Recommended Unity Editor Version: 2022.3+ (LTS)
61+
- Newtonsoft.Json and EDM4U are included utilities; deselect when importing if already installed to avoid conflicts.
3762
- If using .NET Framework and encountering `HttpUtility` errors, create `csc.rsp` with `-r:System.Web.dll` under `Assets`.
38-
- Use version control and test removing duplicate DLLs if conflicts arise.
63+
- Use version control and test removing duplicate DLLs if conflicts arise. Our SDK generally works with most versions of the few dependencies we do include.
3964
- To use your own WalletConnect Project ID, edit `Assets/Thirdweb/Plugins/WalletConnectUnity/Resources/WalletConnectProjectConfig.asset`.
4065

41-
# Build Instructions
42-
43-
## General
44-
45-
- **Build Settings:** Use `Smaller (faster) Builds` / `Shorter Build Time`.
46-
- **Player Settings:** Use IL2CPP over Mono when available.
47-
- **Stripping Level:** Set `Managed Stripping Level` to `Minimal` (`Player Settings` > `Other Settings` > `Optimization`). (Generally not a hard requirement unless using WalletConnect as a wallet provider option.)
48-
- **Strip Engine Code:** Make sure this is turned off.
49-
50-
## WebGL
51-
52-
- **WebGL Template:** None enforced, feel free to customize!
53-
- **Compression Format:** Set to `Disabled` (`Player Settings` > `Publishing Settings`) for final builds.
54-
- **Testing WebGL Social Login Locally:** Host the build or run it locally with `Cross-Origin-Opener-Policy` set to `same-origin-allow-popups`.
55-
56-
Example setup for testing In-App or Ecosystem Wallet Social Login locally (no longer required with Unity 6 Web, can use Build & Run):
57-
58-
```javascript
59-
// YourWebGLOutputFolder/server.js
60-
const express = require("express");
61-
const app = express();
62-
const port = 8000;
63-
64-
app.use((req, res, next) => {
65-
res.header("Cross-Origin-Opener-Policy", "same-origin-allow-popups");
66-
next();
67-
});
68-
69-
app.use(express.static("."));
70-
app.listen(port, () =>
71-
console.log(`Server running on http://localhost:${port}`)
72-
);
73-
74-
// run it with `node server.js`
75-
```
76-
77-
No action needed for hosted builds.
78-
79-
## Mobile
80-
81-
- **EDM4U:** Comes with the package, resolves dependencies at runtime. Use `Force Resolve` from `Assets` > `External Dependency Manager` > `Android Resolver`.
82-
- **Redirect Schemes:** Set custom schemes matching your bundle ID in `Plugins/AndroidManifest.xml` or equivalent to ensure OAuth redirects.
66+
## Additional Resources
8367

84-
# Migration from v4
68+
- [Documentation](https://portal.thirdweb.com/unity/v5)
69+
- [Templates](https://thirdweb.com/templates)
70+
- [Website](https://thirdweb.com)
8571

86-
See https://portal.thirdweb.com/unity/v5/migration-guide
72+
## Support
8773

88-
# Need Help?
74+
For help or feedback, please [visit our support site](https://thirdweb.com/support)
8975

90-
For any questions or support, visit our [Support Portal](https://thirdweb.com/support).
76+
## Security
9177

92-
Thank you for trying out the Thirdweb Unity SDK!
78+
If you believe you have found a security vulnerability in any of our packages, we kindly ask you not to open a public issue; and to disclose this to us by emailing `[email protected]`.

0 commit comments

Comments
 (0)