Skip to content

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)

License

Notifications You must be signed in to change notification settings

godotmancer/SampleGodotCSharpProject

Repository files navigation

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:

vscode-formatting-settings.png

Install the following VSCode plugins for a better experience:

Godot Tools

C# Tools for Godot

EditorConfig Support

Install the following JetBrains Rider plugins:

Godot Support

GDScript Support

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.

godot-editor-layout.png

JetBrains Rider

jetbrains-rider-layout.png

Screenshots

Splash screens generated by Stable Diffusion 😜.

Splash Screen Game Screenshot

Versioning

Will eventually follow semantic versioning.

License

MIT License

About

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)

Topics

Resources

License

Stars

Watchers

Forks

Languages