5 ms·
The godot language server also seems really nice. You just add something like: lspconfig.gdscript.setup({}) to your init.lua (or equivalent in init.vim), then i
by pasabagi 4y ago
The godot language server also seems really nice. You just add something like: lspconfig.gdscript.setup({}) to your init.lua (or equivalent in init.vim), then it works with the normal neovim autocomplete. More significantly, it means you can get the really great godot docs in a floaty window bubble without any context-switching.
- ido 4y agoHow much worse is support for c# than for GDScript? We want to move away from unity and the whole team is already fluent in c#.
- Hasnep 4y agoNot an expert in Godot and definitely not an expert in C#, but I'd say the only real difference is that the documentation for GDScript is slightly better and there are significantly more tutorials for using GDScript than C# with Godot. All of the functions and concepts that are used in GDScript have an equivalent in C#, and you normally can just use the same function in camelCase. You can use both languages in one project, so I'd recommend trying GDScript at first. It's a very simple language so it can be picked up quickly, but as soon as you feel yourself reaching for LINQ or wanting a proper type system then switch that script to C#.
- billfruit 4y agoWhat about for C++? Reading the docs, the C++ support seems somewhat of a side-show, and documentation seems patchy on it.
- qwery 4y agoI'm not sure if you are referring to GDNative which is the native/binary "scripting" interface, or hacking on the engine code itself. Neither are the primary way to use Godot -- the documentation reflects that, I guess. A lot of the documentation is not language specific, and a lot of the topics covered are fundamental. The engine code is great. It's structured logically and navigating it is intuitive. Building the engine is simple, customisable, and documented well. Significant chunks of the engine are integrated as compiled in 'modules'. You can add your own modules and the build system lets you select which modules to include. Adding new node types and working with the scripting/binding system is pretty straight-forward. I think the documentation for working on the engine[0] and contributing to the project[1] (as well as the code itself) are areas where Godot is doing exceptionally well. GDNative can be used to integrate external libraries, add support for other languages[2], without compiling the engine. You can use it as a scripting layer, add node types, etc. I haven't used GDNative non-trivially. * [0] https://docs.godotengine.org/en/stable/development/cpp/index.html https://docs.godotengine.org/en/stable/development/cpp/index... * [1] https://docs.godotengine.org/en/stable/community/contributing/index.html https://docs.godotengine.org/en/stable/community/contributin... * [2] https://github.com/godot-rust/godot-rust https://github.com/godot-rust/godot-rust
- billfruit 4y agoGodot home page itself mentions c++ on the same line as GDScript and C#. Text from Godot home page: "Use the right language for the job: Keep your code modular with an object-oriented API using Godot's own GDScript, C#, C++, or bring your own using GDNative." But my memory was that last time I tried about a year ago, something was patchy about c++ documentation. My doubt still is if c++ is a first class citizen in Godot at par with GDScript and c#.
- sh4rks 4y agoOut of curiosity, why do you want to move away from Unity?
- ido 4y agoStability, the editor just gets slower and slower, price (especially as the team grows and you have to pay per person per month), corporate direction they’ve been going in lately.
- eatsyourtacos 4y agoI am a novice Godot user, but I find the c# support is really easy to use. A lot of the code on their site you can view in either language. And even when I can find people's examples only in gdscript, it's really easy to translate it to c#. I have it linked to visual studio, so I get auto-completions which are 99% of the time all I need. It's really nice to be able to just create some game object, then immediately take advantage of anything else I need to do on the c# side.. whether it be some basic classes for player objects, helpful static data structures etc.
- poga 4y agoThe Godot documentation is also pretty easy to parse. So I made a Dash[1] docset from it: https://github.com/poga/godot-dash-docset https://github.com/poga/godot-dash-docset [1]: https://kapeli.com/dash https://kapeli.com/dash