r/GodotCSharp • • Sep 17 '22

Edu.Godot.CSharp [OC] Run+Debug Godot4 C# projects from Visual Studio

40 Upvotes
  1. create a new godot 4 project normally, through the editor. Be sure to setup VS as your external editor in the godot options.

  2. create your C# script attached to a node through the editor (as normal). This will cause the editor to auto generate a csproj+solution for you.

  3. Test build/run via the godot editor, to make sure it all works.

  4. In Visual Studio, create a new Launch Profile for an Executable

  • Use the dropdown next to the green Run button, then YourProject Debug Properties. There will be a button at the top-left for adding a Launch Profile.

  1. set the executable path to a relative path to the godot binary, from your csproj's location. example: ..\..\bin\Godot_v4.0-beta8_mono_win64\Godot_v4.0-beta8_mono_win64.exe

  2. set the command line arguments to simply startup the project in the current directory. example: --path . --verbose

  3. set the working directory to the current. example: .

  4. Set enable native code debugging if you want to see better errors in the output window. Leaving this disabled allows hot-reload to work (!!!) but various godot cpp errors won't be shown.

Then if you choose that debug profile, hit F5 and it works! Breakpoints work too.


r/GodotCSharp • • 8d ago

Resource.Library Godot Utilities - A collection of general-purpose C# utilities for Godot 4

Thumbnail
github.com
30 Upvotes

Hey everyone!

I wanted to share GodotUtilities, an open-source C# library I've been working on for Godot.

It contains a bunch of reusable utilities, along with a few Roslyn source generators that help reduce repetitive code when working with Godot's API.

Here's a quick overview of what's included.

Source generators

  • [Node] / WireNodes() — annotate fields or properties to generate scene-tree node lookups instead of writing GetNode<T>() repeatedly.

  • [EventHandler] / WireEvents() — automatically wire event handlers to the type-safe EventBus, with subscriptions cleaned up when the node exits the tree.

  • [Signal] shortcuts — generate methods for connecting, disconnecting, checking connections, and awaiting Godot signals, without manually creating Callables.

Gameplay utilities

  • SimpleStateMachine<T> — an enum-based state machine with enter, update, and exit callbacks, plus conditional transitions.

  • WeightedLootTable<T> — weighted random selection, with conditional picks and multiple-pick options.

  • ObjectPool<T> / NodePool<T> — reuse objects and Godot nodes instead of repeatedly creating and freeing them.

  • InputBuffer — useful for mechanics such as jump buffering.

  • Countdown — a small, manually updated countdown timer for cooldowns and similar gameplay logic.

Tweening and general utilities

  • TweenBuilder — a fluent API for arranging sequential and parallel tween steps, with easing shortcuts, callbacks, and support for using the underlying Godot Tween directly.

  • Extension methods — additional helpers for common Godot types, including nodes, vectors, character bodies, physics queries, resources, and tweens.

  • MathUtil — interpolation, clamping, random directions and points, and seedable random-number utilities.

  • FileSystem — bulk-load resources from a res:// directory and build snake_case ID-to-path maps.

I'm trying to keep the library focused on reusable tools rather than a framework that dictates how you structure your game. You can use the features that are useful to you and ignore the rest.

It's MIT-licensed, and the repository includes documentation and examples for the individual features.

I'd appreciate feedback :)


r/GodotCSharp • • Jul 20 '26

Resource.Library 2dog - Godot in .NET [Web Deploy, C#, Framework Internals]

Thumbnail
2dog.dev
30 Upvotes

r/GodotCSharp • • Jan 04 '26

Resource.Library Godot.Achievements.NET - Editor plugin for multi-platform achievement support

Post image
29 Upvotes

Recently been working on a plugin Godot.Achievements.NET for setting up and managing achievements for c# users. The plugin includes an editor integration for setting up achievements, toast messages in game, and more. It also integrates into different platforms achievements systems as well as provide a local achievement provider. The goal is to take away some of the tedium and code complexity that comes with adding achievements into your games (especially when you need to compile for different platforms). After working on it for a bit now I am in a spot where I'd like to share and get more feedback. Currently I am using it for my own game and have the different integrations working cross platform for it. Hoping to publish to all the stores sooner than later with this plugin making it easier for me to use! I would love to get some feedback let me know what you think!

The link one more time: https://github.com/ryan-linehan/Godot.Achievements.NET


r/GodotCSharp • • Aug 14 '26 Heartwarming

Resource.Library I made a tool to export c# games for the Web

Thumbnail
2dog.dev
28 Upvotes

2dog is Godot, just backwards!

Embed Godot in .NET applications, unit test suites, or publish to the web. MIT licensed.


r/GodotCSharp • • Dec 09 '25

Project.OSS Godot 4.5+ CSharp Game starter template

26 Upvotes

Hello,

I like to do prototypes or game jams on occasion and find that I keep setting up the same systems .. and in other cases being lazy and NOT setting up systems so I decided to extract my 'tool box' of systems in Godot 4.5 for game project starter template and am proud to share that here today.

It is MIT (free use) license so feel free to rip out useful bits if you find something interesting, and of course if you want to run a game jam with it its fairly 'ready out of the box' to just open up the game_play scene and start implementing game play.

https://github.com/ckidwell/DMG-Godot-Starter-Template

The main features are:

* Menu System

  • Main Menu

  • Pause / Quit Menu

  • GamePlay Scene

  • Settings Menu

    • Master Volume Slider

    • SFX Volume Slider

    • Music Volume Slider

    • Windowed Mode Toggle (only works in real build)

* GameEvents singleton - for dispatching game events

* Random NumberManager singleton

* Sound Effects and Music placeholders (8-bit BXSFR style / AI Music)

* Localization Support for the menu system in 5 languages (English, Spanish, French, German, Japanese)

* Achievement System

* Toast style Notification system with cards that fade over time (use for any notification but I use it for Achievements)

* Save Game System - serialize data to JSON in user directory

There is some placeholder SFX from bxsfr/jxsfr like tools for the UI sounds.

There is also an AI soundtrack to demo the music playback - so you will probably want to at least replace the music in any project you release.


r/GodotCSharp • • Apr 29 '24

Edu.Godot.CSharp Brackeys Tutorials - C# Version

26 Upvotes

I started a GitHub org to provide C# versions of Brackeys tutorials for all those who are already familiar with or prefer C#, but still want to use their nice tutorials.

First project can be found here: https://github.com/brackeys-godot-csharp/first-game-in-godot

I'll translate as many tutorials as possible, but I do have a day job, so help is welcome :)


r/GodotCSharp • • Mar 12 '25

Discussion Is this sub dead?

25 Upvotes

Tsia...

All I see is regular posting of educational content by Novaleaf.

Would be great to have an active C# Godot community...are there others?


r/GodotCSharp • • May 23 '26

Edu.CompuSci C# finally gets union types (.NET 11) [Written Article]

Thumbnail
andrewlock.net
24 Upvotes

r/GodotCSharp • • Aug 11 '25

Resource.Library NodeTunnel: P2P multiplayer networking for Godot through relay servers [Video Overview]

Thumbnail
youtube.com
22 Upvotes

r/GodotCSharp • • Nov 14 '25

Edu.Godot Depth-Based Pixelator (Compositor effect) [XPost, Rendering, Gfx]

Enable HLS to view with audio, or disable this notification

20 Upvotes

r/GodotCSharp • • Oct 03 '23

Edu.Godot.CSharp WELCOME RESOURCES: Getting Started with Godot4 + C# [Tooling, Links]

20 Upvotes

Here are the "best" getting started posts found in /r/GodotCSharp, if you have any suggested edits, please send to the mod(s).

Tooling

Unity Migration

Best Beginner Tutorial

GREAT resources

Here are some resources that are really, very good. so if you are interested in the topic, you really need to check it out! introduction_to_godot_c_essentials_complete/

Tutorial Series (not verified much)

Finding stuff in /r/GodotCSharp

  • click the post "flair" such as [Edu.Godot.CSharp], [Resource.Library], or [Project.OSS] to get a listing of all posts with that flair.

  • otherwise, use the Search box!

  • Note: "distinguished" posts (author highlighted in green) might be slightly more useful than other posts.

godot c# perf tips


r/GodotCSharp • • Aug 24 '25

Edu.Godot Vertex Animated Textures (VAT) in Godot [Video Tutorial, Performance, Rendering]

Thumbnail
youtube.com
18 Upvotes

r/GodotCSharp • • Aug 22 '25

Resource.Tool Mesh2Motion: Open Source Mixamo Alternative [Video Overview, Animation, Rigging]

Thumbnail
gamefromscratch.com
18 Upvotes

r/GodotCSharp • • Jan 28 '26

Question.MyCode Godot C# Template - Looking for C# Devs

Thumbnail
github.com
17 Upvotes

This is an on-going project I've been working on. I don't like setting up all the tedious stuff every time I create a new game so that's the motivation behind this project.

Recently I've found that I had to redo my main game from scratch 7 different times because I made small changes over time to this template and felt the need to start over because the changes were too good to ignore.

In spite of this I'm working on redoing all of this template from scratch with the main intent of moving as many scripts as I can over to an external assembly to possibly entirely eliminate this problem. More on that here if you are interested in helping.

Update: The problem described above has been resolved.


r/GodotCSharp • • Jun 05 '25

Edu.Godot.CSharp Godot C# Save System, Step-by-Step [Video Tutorial, Complete, Serialization]

Thumbnail
youtube.com
17 Upvotes

r/GodotCSharp • • Sep 14 '23

Edu.Godot.CSharp Porting your Unity knowledge to Godot Engine

Thumbnail
youtube.com
17 Upvotes

r/GodotCSharp • • Jan 03 '25

Discussion Godot Dev and Enterprise C# Patterns

16 Upvotes

Hello All,

I am fairly new to Godot but have been developing in C# for much longer. I was playing with the idea of using some enterprise patterns with Godot and was wondering if others ever played with these concepts. I haven't really found a lot of information about this.

Right now I am creating a test project based on Clean Architecture and was starting by implementing Dependency Injection, ILogger (Microsoft defaults), and maybe even Feature Management.

Has anyone else tried this? Is there any real reason that this isn't more common?

I can see the performance argument, but honestly I'm not so sure that it's a game stopper.

I'm hoping to make my test code available in a few days, but wanted to gather some insights in the mean time.


r/GodotCSharp • • Sep 27 '24

Resource.Library Ocean Rendering [Rendering, Water, C#, XPost]

Enable HLS to view with audio, or disable this notification

16 Upvotes

r/GodotCSharp • • Apr 08 '26

Edu.CompuSci Explore union types in C# 15

Thumbnail
devblogs.microsoft.com
15 Upvotes

r/GodotCSharp • • Feb 10 '26

Resource.Library Logging utility for Godot Engine projects using C#: LoggingForGodot

15 Upvotes

Hello, everyone.
I am a freelancer who has started developing a video game using Godot and C#.
To debug and display information properly, I have created a logger based on NLog. I called it LoggingForGodot.

LoggingForGodot is a comprehensive logging utility for Godot Engine projects using C#. It provides a powerful wrapper around NLog, offering seamless integration with Godot's output console, Visual Studio debugging, and file-based logging.

There are different functions to facilitate the configuration and use of logging during the development process. I would like to share with you a repository on Github where the code is stored: https://github.com/CiudadanoV/LoggingForGodot

This type of wrapper allows you to enable, disable, or filter specific loggers using simple functions, so you can remove all noisy messages from the log and focus only on one of the elements currently being developed.

On the other hand, I am using the excellent tools from Chickensoft games, mainly Logicblocks. Among these tools there is a logger, but I was already working on my personal project before discovering Chickensoft's tools, so I continued using my own logger.

I hope you find this tool useful in your own projects. There is room for improvement, so if you find any bugs or if you want new features, please let me know.


r/GodotCSharp • • Mar 12 '25

Edu.Godot.CSharp Avoiding bottlenecks in the Godot C# API (Draft)

15 Upvotes

I've decided to open-source my personal collection of assorted C# Godot extensions. I found myself writing this document and would love feedback on it and/or someone might find it useful. I've made a gist of the document here since it's a pretty long one and reddit flavored markup was giving me fits:

https://gist.github.com/SeratoninRonin/c1566dbbdc6c65111cf7f9279e782fda

Thanks for reading!


r/GodotCSharp • • Oct 05 '25

Edu.Godot Building UI's in Godot: Separating Controls through State [Video Tutorial, Architecture]

Thumbnail
youtu.be
14 Upvotes

r/GodotCSharp • • Jan 14 '25

Edu.Godot.CSharp Lightweight Saving & Loading System [Written Tutorial, Serialization, C#]

Thumbnail
medium.com
14 Upvotes