Skip to content

Commit f5002dd

Browse files
authored
Update README.md
Update outdated info, add contribution guide. Signed-off-by: Firekeeper <0xFirekeeper@gmail.com>
1 parent 334d7f9 commit f5002dd

File tree

1 file changed

+54
-14
lines changed

1 file changed

+54
-14
lines changed

README.md

Lines changed: 54 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,10 @@
1717
</p>
1818

1919

20+
# Documentation
21+
22+
See full documentation on the [thirdweb portal](https://portal.thirdweb.com/unity).
23+
2024
# Supported platforms
2125

2226
Build games for WebGL, Standalone and Mobile using 1000+ supported chains.
@@ -27,17 +31,15 @@ Build games for WebGL, Standalone and Mobile using 1000+ supported chains.
2731

2832
Head over to the [releases](https://github.com/thirdweb-dev/unity-sdk/releases) page and download the latest `.unitypackage` file.
2933

30-
Drag and drop the file into your project.
31-
32-
The package comes with a sample Scene and Prefab examples showcasing the different capabilities of the SDK.
33-
34-
All you need is a ThirdwebManager prefab in your scene. See [documentation](https://portal.thirdweb.com/unity) for more information.
34+
Follow our [Getting Started Guide](https://portal.thirdweb.com/unity/getting-started).
3535

36-
The SDK has been tested on Web, Desktop and Mobile platforms using Unity 2021 and 2022 LTS. We recommend using 2022 LTS.
36+
All you need is a [ThirdwebManager](https://portal.thirdweb.com/unity/thirdwebmanager) prefab in your scene to interact with the SDK from anywhere!
3737

38-
The example scenes are built using Unity 2022 LTS.
38+
Various blockchain interaction examples are available in our `Scene_Prefabs` scene.
3939

4040
Notes:
41+
- The SDK has been tested on Web, Desktop and Mobile platforms using Unity 2021 and 2022 LTS. We recommend using 2022 LTS.
42+
- The example scenes are built using Unity 2022 LTS.
4143
- The Newtonsoft DLL is included as part of the Unity Package, feel free to deselect it if you already have it installed as a dependency to avoid conflicts.
4244
- If using .NET Framework and encountering an error related to HttpUtility, create a file `csc.rsp` that includes `-r:System.Web.dll` and save it under `Assets`.
4345

@@ -49,7 +51,7 @@ Notes:
4951
- Use IL2CPP over Mono when possible in the Player Settings.
5052
- Using the SDK in the editor (pressing Play) is an accurate reflection of what you can expect to see on native platforms.
5153
- In order to communicate with the SDK on WebGL, you need to `Build and run` your project so it runs in a browser context.
52-
- In some cases, setting `Managed Stripping Level` to minimal when using IL2CPP is also helpful - you can find it under `Player Settings` > `Other Settings` > `Optimization`
54+
- In most cases, setting `Managed Stripping Level` to minimal when using IL2CPP is also helpful - you can find it under `Player Settings` > `Other Settings` > `Optimization`
5355

5456
## WebGL
5557

@@ -59,10 +61,10 @@ Notes:
5961

6062
If you're uploading your build, set `Compression Format` to `Disabled` in `Player Settings` > `Publishing Settings`.
6163

62-
## Other Platforms
64+
## Mobile
6365

64-
- If building to mobile and running into issues, it is best to run Force Resolve from the `Assets` menu > `External Dependency Manager` > `Android Resolver` > `Force Resolve` for example.
65-
- If building for iOS and missing a Metamask package, you can double click on `main.unitypackage` under `Assets\Thirdweb\Plugins\MetaMask\Installer\Packages` and reimport the `iOS` folder
66+
- For Android, it is best to run Force Resolve from the `Assets` menu > `External Dependency Manager` > `Android Resolver` > `Force Resolve` before building your game.
67+
- For iOS, if you are missing a MetaMask package, you can double click on `main.unitypackage` under `Assets\Thirdweb\Plugins\MetaMask\Installer\Packages` and reimport the `iOS` folder
6668

6769
# Usage
6870

@@ -108,15 +110,17 @@ var txRes = await contract.Write("myWriteFunction", arg1, arg2, ...);
108110

109111
# Prefab Examples
110112

111-
The `Examples` folder contains a demo scene using our user-friendly prefabs, check it out!
113+
![image](https://github.com/thirdweb-dev/unity-sdk/assets/43042585/a213b668-0273-400f-a6c1-92a582a35535)
114+
115+
The `Examples` folder contains a demo scene `Scene_Prefabs` using our user-friendly prefabs - they include script examples to get inspired and are entirely optional.
112116

113117
All Prefabs require the [ThirdwebManager](https://github.com/thirdweb-dev/unity-sdk/blob/main/Assets/Thirdweb/Core/Scripts/ThirdwebManager.cs) prefab to get the SDK Instance, drag and drop it into your scene and select the networks you want to support from the Inspector.
114118

115119
[Connect Wallet](https://github.com/thirdweb-dev/unity-sdk/blob/main/Assets/Thirdweb/Examples/Scripts/Prefabs/Prefab_ConnectWallet.cs) - All-in-one drag & drop wallet supporting multiple wallet providers, network switching, balance displaying and more!
116120

117121
- Drag and drop it into your scene.
118122
- Set up the networks you want to support from the ThirdwebManager prefab.
119-
- You can add callbacks from the inspector for when the wallet is connected, disconnected, fails to connect or disconnect, as well as callbacks when the network is switched or fails to do so.
123+
- You can add listeners from the inspector for various wallet events.
120124

121125
[NFT Loader](https://github.com/thirdweb-dev/unity-sdk/blob/main/Assets/Thirdweb/Examples/Scripts/Prefabs/Prefab_NFTLoader.cs) - Standalone drag & drop grid/scroll view of NFTs you ask it to display!
122126

@@ -168,6 +172,42 @@ nftPrefabScript.LoadNFT(nft);
168172
- Get (Native) Balance.
169173
- Custom Contract Read/Write Calls.
170174
- Authentication.
171-
- Deployment.
175+
- Message Signing.
176+
177+
[Smart Wallet](https://github.com/thirdweb-dev/unity-sdk/blob/main/Assets/Thirdweb/Examples/Scripts/Prefabs/Prefab_SmartWallet.cs)
178+
- Adding admins to your smart wallet.
179+
- Removing admins from your smart wallet.
180+
- Creating session keys to grant temporary/restricted access to additional signers.
172181

173182
See full documentation on the [thirdweb portal](https://portal.thirdweb.com/unity).
183+
184+
# Contributing to thirdweb Unity SDK
185+
186+
We warmly welcome contributions to the thirdweb Unity SDK! If you're looking to contribute, here's how you can get started.
187+
188+
## How to Contribute
189+
190+
1. Fork the Repository: Click the "Fork" button at the top right of this page to create your own copy of the repository.
191+
2. Clone Your Fork: Clone your fork to your local machine for development.
192+
3. Create a Feature Branch: Make a new branch for your changes. This helps keep contributions organized.
193+
4. Make Your Changes: Work on your changes. Make sure they are well-tested and don't break existing functionality.
194+
5. Commit Your Changes: Commit your changes with a clear and descriptive commit message.
195+
6. Push to Your Fork: Push your changes to your forked repository.
196+
7. Submit a Pull Request: From your fork, submit a pull request to our main repository. Provide a clear description of your changes and any relevant issue numbers.
197+
198+
Notes:
199+
- For WebGL-specific contributions, you may contribute to our [JS](https://github.com/thirdweb-dev/js/) package as well. The bulk of WebGL-specific behavior goes through its Unity bridge.
200+
- For new Wallet Provider contributions, see our guide to [Submit your Wallet](https://portal.thirdweb.com/unity/wallets/submission).
201+
202+
## Guidelines
203+
204+
- Keep It Simple: Try to keep your contributions small and simple. This makes them easier to review and merge.
205+
- Supported Platforms: Make sure your changes work on either WebGL only, Native platforms only, or both. A good test is to build `Scene_Prefabs` to test your changes there.
206+
- Test Your Code: Ensure your code works as expected and doesn't introduce new issues.
207+
- Be Respectful: When discussing changes, always be respectful and constructive.
208+
209+
# Need Help?
210+
211+
If you're unsure about something or need help, feel free to reach out to us on [Discord](https://discord.gg/thirdweb).
212+
213+
Thank you for contributing to the thirdweb Unity SDK!

0 commit comments

Comments
 (0)