Uhh yeah I think this might actually work. I'm using 2dog (for which I built a zero-copy GPU context to embed in other applications) and since it's 2dog.editor I have editor tools.

https://youtu.be/agaBILUUAis

(this is definitely earliest prototype jank but wow I am excited at how good this actually works... Java Swing window layouts are my nemesis, though...)

 

I had this idea lying around in pieces for a while, a much, much tighter and more flexible tweening API for Godot.

What inspired was this repo (unity-tweens) by Jeffrey Lanters, I used it a few times for Unity and after an upgrade, the API got super weird. All the fluent stuff was gone...

... until I realized it was so, so, so much better this way. ♥️

Well, Godot is full of fluent API for tweens, and I always found it bewildering and a bit clunky to use; even though Godot is my absolute favourite game engine right now.

Long (very looooong, tweens.gd users will get the joke later) story short - tweens.gd became a bit of a monster project, not gonna lie. Godot has, surprise!, a boatload of nodes, each with boatloads of properties.

... here it is. Still a little rough around the edges (generated docs at the end are dense, and the Godot in-engine samples are still very much WIP).

This has been a really fun practice effort to make a 'nice' asset/plugin for the Godot Asset Store. I want to keep maintaining it, of course (I run a small org on github called ⤜outfox⤏, making tools and libraries for fun rather than profit.

https://store.godotengine.org/asset/outfox/tweens/

Call to action - I would absolutely love for some indie devs to try it out and let me know what you think.

  • does the API make sense? (both C# and GDScript ... I know I'm getting kind of cute with a few of the concepts to eke out more legibility and less verbosity)

  • is the performance and stability okay? (I have a super basic benchmark that says it's doing okay, comparable to the built-in Godot Tween class.)

  • what's missing? what's needed from your end?

Cheers, and thanks in advance. I'll be here in the thread to answer questions.

 

I needed a way to embed Godot in .NET applications, and ended up facilitating HTML5 export for C# games, too, which really reinvigorated my passion for Godot in game jams. And for boring work, I needed parallel unit testing (across multiple ALCs).

But what is it...? I call it a C# front-end for the Godot engine, but really...

2dog is still Godot

All the Godot goodness still works, including programming with GodotSharp (their official C# SDK) and the 4.7 official editor, which was important to me for stability and trust (also, easier to swap out or extend).

The nuget packages are free and libre open source under the MIT license. 2dog uses libgodot and creates a choice of small .NET "host" applications that you can tailor to your needs - HTML5 browser export, embedding in WinForms, xUnit testing, etc.

Still hot off the press, always happy about visitors to the ⤜outfox⤏ discord or issues on our GitHub.

 

I made another oopsie, I mean, Open Sourcie. :3

Remember Haskell's newtype? Or F# type abbreviations?

Well, newtype is a package that lets you use similar semantics in #CSharp for a large number of types, including the ability to add semantics and extension-like methods to your own derived types.

MIT-Licensed, go wild!

https://github.com/outfox/newtype

https://www.nuget.org/packages/newtype

newtype, easy distrinct type aliases for C#