Replies: 1 comment
-
This is freaking awesome. Love it! |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
I had some time today and I decided to test using Godot and supabase-csharp together.
Setup: Godot v4.2.rc1.mono.official [ad72de508]
Rider 2023.2.3 w/ the official Rider Godot plugin.
macOS M2
I just opened up the project and added a few UI elements.
I then added the supabase dependency via the Rider NuGet manager.
Below is the C# script I attached to the signup button. I think that it would have been better to attach this script to the base node instead of using ../ to find the other nodes but that's pretty minor / side effect of me starting out with Godot.
...and that's pretty much it. It worked fine.
I'm extremely impressed. Getting async/await to work properly and post the data back to the UI in Unity requires a bunch of futzing with the threads (e.g. UniTask, polling in Update to update the UI, context mgmt, etc). This snippet just worked, no async workarounds required. I was very impressed that NuGet just worked. Godot is much, much lighter and smaller than Unity - it launches faster.
I exported the project as a macOS standalone dmg and it was much easier & faster than exporting from Unity. The resulting build was fairly large (~100mb dmg, ~300mb app), but it looks like the bulk of that 300mb was a single 147mb executable plus basically two complete copies of the rest of the app (Intel and Apple Silicon/arm).
I exported the project as iOS (which is currently very experimental in 4.2rc) and got some errors that I haven't worked through yet.
All in all, my two cents: if you are targeting desktop via Godot, everything looks fine. If you are targeting iOS, well, watch the Godot team for news on the Godot iOS C# stuff - I know they are working on this actively right now. In the meantime there is a GDScript implementation for Supabase that might work for iOS and Godot w/o C#, although it looks like this implementation hasn't been updated in a while.
The next thing to do would be to add in the listeners for debug, session and persistence implementations for Godot. To match the Unity template I suppose a default example of a Supabase manager and nice little place to drop settings.
In any event, I highly recommend checking out Godot - it's a lot of fun. It has a ton of features and nodes that require external packages in Unity. It took me a little while to sort out things like the Remote mode to tweak a running game but all in all it's very clean and modern feeling.
Beta Was this translation helpful? Give feedback.
All reactions