SampleGodotCSharpProject
A work-in-progress example Godot 4 project written in C# (with .Net 6.0), making use of the awesome utilities and game concepts from [@firebelley](https://github.com/firebelley)
Install / Use
/learn @godotmancer/SampleGodotCSharpProjectREADME
SampleGodotCSharpProject
A work-in-progress example Godot 4 project written in C# (with .Net 6.0), making use of the awesome utilities and game concepts from @firebelley
Shout-out to @valkyrienyanko for being the first to contribute and clean-up the C# code - since this is my first attempt at programming in C#, @valkyrienyanko Github Wiki has been very helpful.
Purpose of this project
Develop game mechanics and patterns for Godot 4 using C#. Try to make the development experience as satisfying and consistent as possible.
- Component based Scene Tree (Composition)
- Use of global signals (Game Events)
- Managers (Sound, Effects, Bonus) - subscribe to Game Events
- Godot Class extensions (add missing helper methods)
This project will also serve as a 'light' benchmark of the current master branch of Godot 4.
How to build/run
Make sure you are using latest Godot 4 version (I build Godot 4 from source nearly every day and will try to keep this repo up-to-date accordingly).
I will try to keep the GodotUtilities folder from @firebelley in-sync with this project.
Look around, improve and feedback welcome.
Editor formatting and plugins
In order to keep the source formatting consistent between JetBrains Rider and VSCode please make sure your VSCode OmniSharp settings are configured as shown below:

Install the following VSCode plugins for a better experience:
Install the following JetBrains Rider plugins:
Godot Editor and JetBrains Rider Screen Layouts
I have found that the following screen layout works optimally when developing Godot games with C#:
Godot Editor Layout
All editor sections/tabs are to the right.

JetBrains Rider

Screenshots
Splash screens generated by Stable Diffusion 😜.

Versioning
Will eventually follow semantic versioning.
