Skip to content

Commit

Permalink
Update README.md
Browse files Browse the repository at this point in the history
Signed-off-by: Firekeeper <[email protected]>
  • Loading branch information
0xFirekeeper authored Sep 17, 2024
1 parent 3540196 commit 2f1e89f
Showing 1 changed file with 8 additions and 25 deletions.
33 changes: 8 additions & 25 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ Experience our multichain game demo leveraging In-App Wallets and Account Abstra

| Wallet Provider | WebGL | Desktop | Mobile |
| ----------------------------------------- | :---: | :-----: | :----: |
| **In-App Wallet** (Email, Phone, Socials) | ✔️ | ✔️ | ✔️ |
| **In-App Wallet** (Email, Phone, Socials, Custom) | ✔️ | ✔️ | ✔️ |
| **Ecosystem Wallet** (IAW w/ partner permissions) | ✔️ | ✔️ | ✔️ |
| **Private Key Wallet** (Guest Mode) | ✔️ | ✔️ | ✔️ |
| **Wallet Connect Wallet** (400+ Wallets) | ✔️ | ✔️ | ✔️ |
Expand All @@ -24,28 +24,6 @@ Experience our multichain game demo leveraging In-App Wallets and Account Abstra

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

# Why Upgrade to v5?

Thirdweb's Unity SDK v5 leverages the robust [.NET SDK](https://portal.thirdweb.com/dotnet) for core functionality, providing a unified API and behavior across platforms.

## Key Improvements:

- **Unified API:** Say goodbye to the WebGL Bridge. Now, enjoy a consistent experience across WebGL, Desktop, and Mobile platforms.
- **Enhanced Composability:** Use our SDK anywhere without worrying about its state. APIs are chain agnostic, enabling seamless interaction with multiple chains.
- **Native Experience:** The .NET core provides a native, predictable experience, making upgrades less daunting.
- **Ecosystem Wallets** The ultimate cross-platform wallet product, suitable for ecosystems wanting to grow out of their shell. Fast, shareable with third parties securely, non-custodial.
- **Simplified `ThirdwebManager`:**
- `ThirdwebManager.Instance.SDK.GetContract` is now `ThirdwebManager.Instance.GetContract`, returning `ThirdwebContract`.
- `ThirdwebManager.Instance.SDK.Wallet.Connect` is now `ThirdwebManager.Instance.ConnectWallet`, returning `IThirdwebWallet`.
- Handles multiple wallet connections and tracks the active wallet.
- The prefab is now much simpler and straightforward to setup.
- **Optimized Package:** Cleaner, lighter Unity package with minimal dependencies, enhancing performance. We took control of all the layers and rewrote them, further improving the experience when using thirdweb infra. No AWS SDK. Nethereum is used only for types/encoding. Newtonsoft.Json and EDM4U are included.
- **Cross-Platform Consistency:** No behavioral differences between platforms. What you see in the editor is what you get in WebGL, Standalone, and Mobile runtime platforms.

## Note:

To achieve full .NET core functionality for WebGL, we include a modified version of [WebGLThreadingPatcher](https://github.com/VolodymyrBS/WebGLThreadingPatcher) and have adapted our .NET core to work around any potential issues running raw .NET libraries in WebGL, though all tasks will be executed on one thread. This is required due to Unity's lack of support for C# multithreading in WebGL.

# Getting Started

1. **Download:** Head over to the [releases](https://github.com/thirdweb-dev/unity-sdk/releases) page and download the latest `.unitypackage` file.
Expand All @@ -69,8 +47,9 @@ To achieve full .NET core functionality for WebGL, we include a modified version

## WebGL

- **WebGL Template:** None enforced, feel free to customize!
- **Compression Format:** Set to `Disabled` (`Player Settings` > `Publishing Settings`) for final builds.
- **Testing In-App Wallets (Social Login):** Host the build or run it locally with `Cross-Origin-Opener-Policy` set to `same-origin-allow-popups`.
- **Testing WebGL Social Login Locally:** Host the build or run it locally with `Cross-Origin-Opener-Policy` set to `same-origin-allow-popups`.

Example setup for testing In-App Wallet (Social Login) locally:

Expand Down Expand Up @@ -98,7 +77,11 @@ No action needed for hosted builds.
## Mobile

- **EDM4U:** Comes with the package, resolves dependencies at runtime. Use `Force Resolve` from `Assets` > `External Dependency Manager` > `Android Resolver`.
- **Redirect Schemes:** Set custom schemes matching your bundle ID in `Plugins/AndroidManifest.xml` or equivalent for InAppWallet OAuth.
- **Redirect Schemes:** Set custom schemes matching your bundle ID in `Plugins/AndroidManifest.xml` or equivalent to ensure OAuth redirects.

# Migration from v4

See https://portal.thirdweb.com/unity/v5/migration-guide

# Need Help?

Expand Down

0 comments on commit 2f1e89f

Please sign in to comment.