gdscript is so intuitive and works really well with godot, i just need to get over my discomfort with lines of code not ending in semicolons and not having curly brackets for scope.
"It's extremely unlikely to happen with Godot" literally 2 years later: """ And now the news broke that for the release of the beta version of Godot 4.0 there is a notable change, this change is that VisualScript, Godot's visual scripting language, which was introduced since version 3.0 nearly five years ago, it will not be part of the beta version, much less the final version of Godot 4.0. """
Yeah so right now, it's lacking some refinement, making it slow to code with if you don't code custom VisualScript nodes in the first place. Hopefully it'll get reworked moving forward.
Choosing programming language seem like a big consideration for beginner, but in veteran perspective we knew it's not big of a deal, we found out that even 10-20y in, you still have to learning new thing to keep up with the industry anyway. What's more important than that is FUNDAMENTALS of programming. if you understand fundamental well, you could easily learning new lang in short time-frame, not big deal at all. GDQuest given a solid advice here, just pick 1 language to start coding with, focus learning the tools. GDScript is so easy to learn and don't need much time to be efficient, so after that done, you can go learn some other programming language later, it will not be too late guaranteed. edited: typos
I'd say, do (and actually finish) CS50 and learn C programming language. Your foundation would be amazingly solid that you could learn any languages you want.
There's a new plugin now that add support to Lua to the Godot 3.x. It's still on early development stages but already has a lot of features and works just fine.
Pretty much any time you have a heavy algorithm that slows down your game. For example, you implement behavior trees for all AI in your game, a noise generator, a heavy procedural generation algorithm... One we had to do was implementing a heat-map pathfinder, an algorithm that's computationally heavy initially but allows you to have, like 10,000 AI agents pathfinding on a grid efficiently after the initial calculation. There can be plenty of cases, you'll have to see when your performance starts to drop due to some specific bit of CPU code.
@@Gdquest Thanks for the response. What I don't understand is a rule of thumb for knowing what is a "heavy algorithm". Adding lots of numbers together is a heavy algorithm if you add enough numbers or do it enough times repeatedly.
Thanks so much for the video!! I have a slightly altered question to something you already sorta answered: If I use C# with Godot, are the scripts very different from the C# scripts in Unity? If I have experience using C# scripts in unity, do you recommend sticking to C# in Godot? Thanks!
i dont know what C# is or C++.... all I know is how to code and Godot understand me very well..godot has no limit not like scratch who is my foundation... and I can create game that has more movie like that no one game engine can be copy it..
Question for anyone who knows Godot Engine enough, but is it possible to Script visually then switch it halfway Too see what the Visual script looks like in something like C# or GDScript?
Whichever is fine, depends on how long you've been coding in C#. For professionals I'd say go with C#, if you do it has a hobby or generally have limited gamedev exp. I'd recommend GDScript.
Do they have the same API but with different naming conventions? Do they have access to the exact same Godot functions? For example, in C# it would be Input.GetActionStrength; is the equivalent of this always Input.get_action_strength? Or do they sometimes differ?
the thing I dislike most about using c# with an engine is that they all require the use of visual studio, I just want to do everything in engine. I get it's really good for coding but the extra compile steps when testing small changes os so tedeus
am an Unreal developer and am starting to get overwhelmed with the complexity of the program, I was planning on learning c++ for unreal to have more customizability and then some unity, issue is, I noticed unity is in a bit of a bad state so I was wondering what the best way to start with godot as someone coming from the unreal visual script area
Should learn python or gdscript as in I just want to a language that can be future proof and yes I know c# and c++ is everything of all just wanted to start with something that is not too complex
That's the majority of what we do, really. I just decided to do more advanced content in text format because, at least for code tutorials, it really doesn't work well in video. I'd be wasting people's time. You can find some intermediate-level free content on our website already: www.gdquest.com/tutorial/godot/
Maybe a dump question but I don't know if I would do the things right or not... I would like to start with Godot and try some 2d game dev, but don't have really experience in programming, art etc. Now my idea was to create a mini small simple block shooter with maybe a Life bar and some small other stuff. Now I found on RUclips many videos about Godot and how to add collision shape etc. Would it be useful to start with have an idea and grab/and take inspirations from every side something to put it useful in 1 together ? I am really struggling with this cause I want to learn how to do this but at the same point i had the idea to learn this on RUclips :/ But otherwise I think, when I "copy and paste" much I don't learn so much as I should, difficult to explain .. They are also so many videos from how to make your "first 2d Godot" game, but how useful is this ? I hope you can understand what I exactly mean, and sorry for my English :D Best regards and stay safe and happy :)
I wouldn't call it a language, but it's a declarative form of code. I think it's important to explain to people who are new to programming, because they tend to think that visual code and written scripts are completely different, or that using an interface isn't programming. While, well, it is!
@@Gdquest You still can edit the TSCN text scene forms directly. It's just strongly NOT recommended, because it often contains more than meets the eye.
@@Alche_mist yeah but that’s more of an encoding, than a language. A language is designed to be expressed by people and perform a wide array of tasks. A packed scene is designed to do very specific things and not with the intention of ever being edited by hand by a human
I have a question? If I already have 4 months of programming in JavaScript. I already know variables, loops, functions, classes and how to manipulate the DOM with JavaScript. For those who know about programming languages already can I learn GDScript fairly quick if I choose to learn it? I know it's a matter of opinion and it's up to the individual to learn so it's a personal opinion but from your personal opinion how long would be your guess for someone to pick up GDScript and learn to code with this language if you already know the fundamentals with JavaScript?
Would be cool if they could add JavaScript as a language you could use for programming in Godots since after all JavaScript is one of the most widely used languages even more than C#. Just a thought on the subject is all. But I guess maybe I could use this gaming engine to learn C# and improve my skills in OOP, thank you for the wonderful video.
I feel like MMOs get a bad rap in terms of difficulty. They're only hard because netcode is annoying, RPGs themselves aren't exactly the most complicated genre. I don't think it's any more time consuming than any other type of multiplayer game. People pump out battle royales all the time, and decent FPS netcode is *way* harder. That said, it'd be way more _expensive._ Server costs are no joke.
@@Dogman_35 I'd guess it might also have to with the first 'M' meaning 'massive'. At the bare minimum, the server code has to be able to handle all the (lots of) players interacting at once.
@@Alche_mist Yeah, but so do battle royales that involve literally 100 players loaded into the same map all at once. MMOs handle a lot of players, but it's across multiple servers that only hold a couple hundred players at any given time. There's a set limit to how many people can be interacting at once.
In game engines, we use the term to mean "front-end programming languages." Here, you use all five in _scripts_ you attach to nodes, hence in Godot we talk about gameplay scripts / scripting regardless of the language you use.
Last time I tried the visual script, it was really very poor. Far, far inferior to something like Unreal's Blueprints. GDScript, however, is very good.
Started learning to program with GDscript about 6 months ago and it's been so easy to learn. Thanks to your team for coming up with such a simple language for game design!
I really love GDScript, but, in reality, gdnative needs more support both with guides/tutorials and "out of the box" engine features. Sometimes developing with gdscript feels like you driving sport car with hand brake up.
@@kidmosey kind of yes. I just hope there will be some basic examples how to use it. Like basic character movements or similar entry level topic that will help to understand how to interact with nodes from cpp script.
As much as I love C#, GDScript is so much more hassle free to get up and running prototypes. Mostly because of its tight integration. If C# was fully in-Engine I wouldve probably stick to it.
I write scripts that require fast performance in C# (I can't write in C++ yet). The rest in GDScript. It's so much quicker (and for me nicer) to write code there.
@@kidmosey You can setup an external editor for use with GDScript too. Godot Editor even has an LSP server so Emacs or VSCode (anything with LSP support) should work with it at least as well as the integrated editor.
@@kidmosey Not at all, I'm just sharing my thoughts on the one reason you mentioned. Performance and code libraries are probably much bigger reasons to prefer C#. If your game is script-heavy (like e.g. Factorio) GDScript is just not an option.
@@NesiAwesomeness Yes object pooling help when you have thousands of objects to spawn or destroy within a small timeframe. Other than that, it isn't that noticeable.
I would like to see a similar video where you cover how well each language works when exporting for the web. Specifically, which of the available languages can be compiled to webassembly and which are automatically compiled to webassembly when exporting for the web.
I think visual scripting is probably the best for me to start with. I have zero coding experience. Having parts moving around on a grip looks so much easier. I can get to the other kind later. Godot script seems good, since the video recommends it.
Visual scripting is currently no longer supported in Godot. If you'd like to learn GDScript, try the free app on GDQuest.com. It's interactive and you need no prior coding experience. It was funded by the user community.
But really, I do have to say that godot help me understand more about the coding(of course, that is several tutorial aided me to see through that) , while being so lightweight that it only to be just one executable file within 100MB size. Originally, I was seeking for alternative C# coding to unity engine, funny thing is, I am now coding with GDscript instead of coding C#. It is just GDscript too attractive to use, I will not change to other alternatives any time soon, but may try to use other scripting language of godot if I want to waste some spare time to do so.
A few questions if you don't mind, thank you! 1) Can you intermix scripts, ie can I write some of my game in GDScript and some in C#? 2) Why is it that you recommend seasoned developers write in C#? Just for code transportability, execution speed, language features or the fact that someone might already be familiar with it?
1) yes you can 2) mostly because someone who uses c# all the time might feel constrained in GDScript. The way GDScript works is it's mostly for gameplay programming. If you need more performance, you would traditionally write a c++ module.
What version of visual studio and vs code should I use for godot mono? Do I just download vscode or do I need to do extra setup? Can I code with c# in the editor?
For VSCode you can use this plugin: github.com/godotengine/godot-csharp-vscode And for visual studio this one: github.com/godotengine/godot-csharp-visualstudio
I haven't used Godot but I do use Unity and I've been a SQL and Windows application developer for over 20 years. If there's one piece of advice I'd give to a new programmer is to go with C#. It's elegant, simple to learn, managed and is the best general language I've used.
If you haven't used Godot you're not really in the best position to offer advice on language choice for it. ;) A new programmer should forget about the 'language wars' and just learn programming concepts in whatever language clicks with them. Yes C# is a good choice career wise, but the problem with it is integration to the IDE and general polish in Godot is still poor. So I would strongly advise a new programmer to use GDScript to avoid unneeded frustration and confusion, at least until C# support improves. VS Code is an option but that's 2 IDE/editors a new dev needs to get familiar with, not ideal. If they really want to use/learn C# they're better off using Unity, or even 'proper' C# in Visual Studio, Rider etc but then they lose a lot of built in graphic/game features of course. If your goal is to make a game, GDScript, if your goal is language experience for career etc , C# elsewhere.
@@Ash_18037I wasn't referring to game programming in either Unity or Godot. My point was if you have no programming experience at all and were choosing an initial language to learn then C# is the most beneficial. I have used GDScript now and for programming in Godot then it has advantages but I still wouldn't recommend it to learn general programming techniques.
Nice video! Your correct about there being 5 main coding languages you can use in godot but you can use almost every language just by getting plugins the only one that isn’t in godot that I know of is LuaU
Hey, I have an important question. For about 7 months I've been making stuff in Lua. About a month ago I started learning C++. Now I want to program a game in Godot together with a friend. The only problem now is that he's been working in C# for a bit longer and I've recently started working in C++. Does it therefore make sense to make the game in C# and C++ or should I rather switch to C#?
I'm probably too late to help if I can but, there are two ways to use c++ in godot, c++ modules or gdnative which has now been replaced by gdextension. You can use C# and C++ together. They are similar since they are both in the C-family but they are still different, which means that you won't be writing in the same language, you won't be able to help each other write unless you know C# or he knows c++. So stick with whichever you choose, just fyi I'm learning C++ as well.
Years ago i made some prototype (or asteroids clone) in unreals blueprints. Took me almost a year (yes i was learning blueprints). However now i scripted similar functionality in godot in about 2 weeks. Many seemingly trivial problems (like global variable) in unreal blueprints are so hidden and convoluted that took me months to discover working solution.
yeah if Unreal just let you use C# I'd be way more keen on it. I hate using blueprints but also hate how poorly documented their C++ APIs are. So I keep coming back to using Unity... but now considering GoDot instead
You can find the complete course here: www.gdquest.com/tutorial/godot/learning-paths/getting-started-in-2021/
before this, i thought there were only 4
I didn't know godot supported C too
Godot officially supports 5 languages.
Godot mainly supports C via GDNative, C++ actually uses the C API under the hood
@@SaiponathGames Godot technically supports infinite languages through GDNative, if it can interact with C it can use the GDNative API
Yea right, forgot that!
@@lennyphoenixc I'm pretty sure there aren't infinite programming languages, but then again, I never counted them
gdscript is so intuitive and works really well with godot, i just need to get over my discomfort with lines of code not ending in semicolons and not having curly brackets for scope.
I use python so i don't have that problem hahahaha
Me too.
The snake case naming and the focus on dynamic typing is the worst.
C++ is better I enjoy the agony.
I put semicolons anyway
Im just unreasonably in love with gdscript.
You have reason. It slaps.
Its great, just like Python.
"It's extremely unlikely to happen with Godot"
literally 2 years later:
"""
And now the news broke that for the release of the beta version of Godot 4.0 there is a notable change, this change is that VisualScript, Godot's visual scripting language, which was introduced since version 3.0 nearly five years ago, it will not be part of the beta version, much less the final version of Godot 4.0.
"""
im learning gdscript but damn, the visual script looks interesting!
Yeah so right now, it's lacking some refinement, making it slow to code with if you don't code custom VisualScript nodes in the first place. Hopefully it'll get reworked moving forward.
Choosing programming language seem like a big consideration for beginner, but in veteran perspective we knew it's not big of a deal, we found out that even 10-20y in, you still have to learning new thing to keep up with the industry anyway.
What's more important than that is FUNDAMENTALS of programming.
if you understand fundamental well, you could easily learning new lang in short time-frame, not big deal at all.
GDQuest given a solid advice here, just pick 1 language to start coding with, focus learning the tools.
GDScript is so easy to learn and don't need much time to be efficient, so after that done, you can go learn some other programming language later, it will not be too late guaranteed.
edited: typos
Colleges use to teach Python as first language for beginners. So easy to use and learn yet so useful and versatile.
Just went with C# because i actually intended to use Unity but Godot had the lower filesize and easier to get around on
I'd say, do (and actually finish) CS50 and learn C programming language. Your foundation would be amazingly solid that you could learn any languages you want.
Thanks! I'm also planning to start with GDScript and later on learn C++. It seems more fun that way.
Ok cool this has helped me decide to start learning gdscript instead of worrying about learning c# as a beginner
There's a new plugin now that add support to Lua to the Godot 3.x. It's still on early development stages but already has a lot of features and works just fine.
Great video. Thanks. Can you give specific examples of when using C#, C or C++ can yield significantly more efficient code compared to GDScript?
Pretty much any time you have a heavy algorithm that slows down your game. For example, you implement behavior trees for all AI in your game, a noise generator, a heavy procedural generation algorithm... One we had to do was implementing a heat-map pathfinder, an algorithm that's computationally heavy initially but allows you to have, like 10,000 AI agents pathfinding on a grid efficiently after the initial calculation.
There can be plenty of cases, you'll have to see when your performance starts to drop due to some specific bit of CPU code.
@@Gdquest Thanks for the response. What I don't understand is a rule of thumb for knowing what is a "heavy algorithm". Adding lots of numbers together is a heavy algorithm if you add enough numbers or do it enough times repeatedly.
@@timberjustinlake Anything that measurably impacts your game's performance. It's all about measuring it in context.
Well this was an eyeopener, I thought you had to do GDscript with Godot, maybe I'll give it a shot now when I can use C#.
thank you for the great tutorials, Im ready to start my Godot Journey as a beginner with the help of this channel.
I'm using C# since I'll be learning that at my education.
All of this if very good advice! Great video.
Thanks so much for the video!! I have a slightly altered question to something you already sorta answered:
If I use C# with Godot, are the scripts very different from the C# scripts in Unity? If I have experience using C# scripts in unity, do you recommend sticking to C# in Godot? Thanks!
i dont know what C# is or C++.... all I know is how to code and Godot understand me very well..godot has no limit not like scratch who is my foundation... and I can create game that has more movie like that no one game engine can be copy it..
Question for anyone who knows Godot Engine enough, but is it possible to Script visually then switch it halfway Too see what the Visual script looks like in something like C# or GDScript?
video is out of date, visual script was removed because it was pretty bad
I need an external code editor for c sharp like vs code or visual studio
You can tell Godot to use VSCode (or another program) as an editor in its "Editor Settings"
Which language would you recommend to Unity users who want to switch to Godot: GDScript or C#?
Whichever is fine, depends on how long you've been coding in C#. For professionals I'd say go with C#, if you do it has a hobby or generally have limited gamedev exp. I'd recommend GDScript.
Nice video, thanks!
Would I be able to export to the Android platform using GDscript? I heard I would need to use C#
I've been playing around with the ECMASCRIPT extension
Do they have the same API but with different naming conventions? Do they have access to the exact same Godot functions?
For example, in C# it would be Input.GetActionStrength; is the equivalent of this always Input.get_action_strength? Or do they sometimes differ?
the thing I dislike most about using c# with an engine is that they all require the use of visual studio, I just want to do everything in engine. I get it's really good for coding but the extra compile steps when testing small changes os so tedeus
am an Unreal developer and am starting to get overwhelmed with the complexity of the program, I was planning on learning c++ for unreal to have more customizability and then some unity, issue is, I noticed unity is in a bit of a bad state so I was wondering what the best way to start with godot as someone coming from the unreal visual script area
This is a fantastic presentation. You are world class Nathan!
Should learn python or gdscript as in I just want to a language that can be future proof and yes I know c# and c++ is everything of all just wanted to start with something that is not too complex
Python is one of the most used languages worldwide, it's a good option for learning.
@@Gdquest thank you for the reply :)
Nathan as always excellent work!
Is it possible to implement a friend's list and online leaderboard with godot?
watch the previous video in the playlist (preferrably the updated version in its description)
Wait, C++ is supported now?
4:43 boo jumpscare
Since I’m more touch in python, GDScript is my old-new partner
Very useful video
Thanks for it! But make some advanced stuff too! 480th!
That's the majority of what we do, really. I just decided to do more advanced content in text format because, at least for code tutorials, it really doesn't work well in video. I'd be wasting people's time.
You can find some intermediate-level free content on our website already: www.gdquest.com/tutorial/godot/
Well, I am a intermediate, I would love to learn some too advanced stuff like Splines, Mesh Generation and something like that.
What website is shown at 4:53?
Maybe a dump question but I don't know if I would do the things right or not...
I would like to start with Godot and try some 2d game dev, but don't have really experience in programming, art etc.
Now my idea was to create a mini small simple block shooter with maybe a Life bar and some small other stuff.
Now I found on RUclips many videos about Godot and how to add collision shape etc.
Would it be useful to start with have an idea and grab/and take inspirations from every side something to put it useful in 1 together ?
I am really struggling with this cause I want to learn how to do this but at the same point i had the idea to learn this on RUclips :/
But otherwise I think, when I "copy and paste" much I don't learn so much as I should, difficult to explain ..
They are also so many videos from how to make your "first 2d Godot" game, but how useful is this ?
I hope you can understand what I exactly mean, and sorry for my English :D
Best regards and stay safe and happy :)
Yes, making personal projects and taking code or inspiration from resources you find online is a good way to get started.
@@Gdquest Thank you :)
I have been using Java for years to make mobile apps and I know some c# so imma stick with that. It’s all about to what is good for your situation
Don't forget about Nim for Godot!
Is it still in development? I think it was left in alpha and kind of abandoned. Or perhaps it was Kotlin.
@@Gdquest Nim, the language was last updated today, Godot-nim, a couple of weeks ago, according to Git.
@@Gdquest Frayhem mobile game created with Nim
Gd engine is so hard to learn. I only able to learn gd( geometry dash) editor
How to I use C?
they did drop Vscript though
Yes, that's correct. There's a more recent version of this video available if you like.
but there is a open source replacement although community supported but performs better than Vscript called orchestra plugin
According to what you said.... Godot scene editor is the 0th language of the list.... making it a 6-languages technology in some way.
I wouldn't call it a language, but it's a declarative form of code. I think it's important to explain to people who are new to programming, because they tend to think that visual code and written scripts are completely different, or that using an interface isn't programming. While, well, it is!
@@Gdquest You still can edit the TSCN text scene forms directly. It's just strongly NOT recommended, because it often contains more than meets the eye.
@@Gdquest Everything we do on a computer is programming, We just have an interface to make it easier lol
@@Alche_mist yeah but that’s more of an encoding, than a language. A language is designed to be expressed by people and perform a wide array of tasks. A packed scene is designed to do very specific things and not with the intention of ever being edited by hand by a human
Can I know which is easier to learn?
C, C# or C++?
C# is easier
C# (
C and C++
GDscript is so nice and intuitive.
can you use Python with godot? Thats the only language I can ^^"
I have a question? If I already have 4 months of programming in JavaScript. I already know variables, loops, functions, classes and how to manipulate the DOM with JavaScript. For those who know about programming languages already can I learn GDScript fairly quick if I choose to learn it? I know it's a matter of opinion and it's up to the individual to learn so it's a personal opinion but from your personal opinion how long would be your guess for someone to pick up GDScript and learn to code with this language if you already know the fundamentals with JavaScript?
Would be cool if they could add JavaScript as a language you could use for programming in Godots since after all JavaScript is one of the most widely used languages even more than C#. Just a thought on the subject is all. But I guess maybe I could use this gaming engine to learn C# and improve my skills in OOP, thank you for the wonderful video.
Can I make an MMORPG with Godot?
Chill it's a joke xD
You totally can.
But you know how difficult and time-consuming it would be, because you clearly stated it's a joke.
I feel like MMOs get a bad rap in terms of difficulty. They're only hard because netcode is annoying, RPGs themselves aren't exactly the most complicated genre. I don't think it's any more time consuming than any other type of multiplayer game.
People pump out battle royales all the time, and decent FPS netcode is *way* harder.
That said, it'd be way more _expensive._ Server costs are no joke.
@@Dogman_35 I'd guess it might also have to with the first 'M' meaning 'massive'.
At the bare minimum, the server code has to be able to handle all the (lots of) players interacting at once.
@@Alche_mist Yeah, but so do battle royales that involve literally 100 players loaded into the same map all at once.
MMOs handle a lot of players, but it's across multiple servers that only hold a couple hundred players at any given time.
There's a set limit to how many people can be interacting at once.
Can we really make online games with Godot on version 3.x?
Perfect timing lol
im super garbage at math, is that going to stop me from trying to learn gdscript?
No, not at all. There'll be challenges but when you code, it's all applied math so it will feel quite different from school math.
Now it’s gpt language so just pick c++
"we especially recommend it (C#) to C# developers"... you don't say 😅
Using spaces instead of brackets is truly unpleasant, and now that I know it used to use lua, I really wish they had stuck with it.
How about Python?
Where is the lisp-based scripting language?
I wish there was Java support for Godot, I really like writing Java code. I know C# is extremely similar to Java but it just doesn't feel the same :(
how to add ads to android games?
There is the admob plugin
Is python launge is on godot?
I only can code python 💀
No, but if you can code in Python, you can learn to code in other languages too!
@@Gdquest what is the best to learn gd script or C# im confuse XD
@@massofi7027 ok thanks
200th comment
The fellows who switched from Unity because of the changes
👇
👇
👇
Lol yup. Spent a decent chunk of time learning Unity. Luckily a lot of the skills transfer over.
I know C#
first
nice
Please change the title. C#, C, and C++ are not Scripting Languages. Scripting languages and Programming languages are not the same thing.
In game engines, we use the term to mean "front-end programming languages."
Here, you use all five in _scripts_ you attach to nodes, hence in Godot we talk about gameplay scripts / scripting regardless of the language you use.
Last time I tried the visual script, it was really very poor. Far, far inferior to something like Unreal's Blueprints. GDScript, however, is very good.
Started learning to program with GDscript about 6 months ago and it's been so easy to learn. Thanks to your team for coming up with such a simple language for game design!
Not my team, it's Godot's co-author Juan who designed it, now George Marques is in charge of it. I only contributed documentation.
@@Gdquest Thanks to The Team then! :)
GDscripts can go to hell
I really love GDScript, but, in reality, gdnative needs more support both with guides/tutorials and "out of the box" engine features. Sometimes developing with gdscript feels like you driving sport car with hand brake up.
@@kidmosey kind of yes. I just hope there will be some basic examples how to use it. Like basic character movements or similar entry level topic that will help to understand how to interact with nodes from cpp script.
A year later and the "extremely unlikely to drop support for a language" part didn't age very well, but still a useful video!
Wait, which language did they drop support for?
@@Acoustic_Screecher from what I heard, the Visual coding will be removed in Godot V4
As much as I love C#, GDScript is so much more hassle free to get up and running prototypes. Mostly because of its tight integration. If C# was fully in-Engine I wouldve probably stick to it.
I write scripts that require fast performance in C# (I can't write in C++ yet). The rest in GDScript. It's so much quicker (and for me nicer) to write code there.
@@kidmosey You can setup an external editor for use with GDScript too. Godot Editor even has an LSP server so Emacs or VSCode (anything with LSP support) should work with it at least as well as the integrated editor.
@@kidmosey Not at all, I'm just sharing my thoughts on the one reason you mentioned. Performance and code libraries are probably much bigger reasons to prefer C#. If your game is script-heavy (like e.g. Factorio) GDScript is just not an option.
@@alexandersh86 that's so good to hear. I might look into that. I am not a huge fan of having the scripts and engine being on the same screen.
@@alexandersh86 why if the game is script heavy gdscript isnt an option?
Thank you so much! I'll probably just learn GDScript since it goes best with the engine ^^
Happy C# user here 😎
How's the garbage collection?
Like any C# game, it kicks in when you instantiate and delete things too often (bullets etc.). You have to work around it with object pools.
@@Gdquest I guess, I'll have to look up object pools in C#
@@NesiAwesomeness Yes object pooling help when you have thousands of objects to spawn or destroy within a small timeframe. Other than that, it isn't that noticeable.
Does C# have the same features as GDScript or is there anything you can't do with C#? I would like to prefer the use of C#...
GDscript will always be my main... Also because i have no other language experience except Lua (love)
I come from the future! Don’t use visual scripting.
I would like to see a similar video where you cover how well each language works when exporting for the web. Specifically, which of the available languages can be compiled to webassembly and which are automatically compiled to webassembly when exporting for the web.
Thank you for helping me make decision about language choice. It was a hard choice, but now I decide to stick to GDscrpt.
Great heads-up, thanks.
I'm gonna go with Rust+Haskell wrappers over Native. Slightly harder, but totally worth it.
I think visual scripting is probably the best for me to start with. I have zero coding experience. Having parts moving around on a grip looks so much easier. I can get to the other kind later. Godot script seems good, since the video recommends it.
Visual scripting is currently no longer supported in Godot. If you'd like to learn GDScript, try the free app on GDQuest.com. It's interactive and you need no prior coding experience. It was funded by the user community.
Very useful and I'm very thankful to you for keeping every industry standard tutorial free.
But really, I do have to say that godot help me understand more about the coding(of course, that is several tutorial aided me to see through that) , while being so lightweight that it only to be just one executable file within 100MB size.
Originally, I was seeking for alternative C# coding to unity engine, funny thing is, I am now coding with GDscript instead of coding C#. It is just GDscript too attractive to use, I will not change to other alternatives any time soon, but may try to use other scripting language of godot if I want to waste some spare time to do so.
If you liked Gdscript, you would love python, lua and Julia.
A few questions if you don't mind, thank you! 1) Can you intermix scripts, ie can I write some of my game in GDScript and some in C#? 2) Why is it that you recommend seasoned developers write in C#? Just for code transportability, execution speed, language features or the fact that someone might already be familiar with it?
1) yes you can
2) mostly because someone who uses c# all the time might feel constrained in GDScript. The way GDScript works is it's mostly for gameplay programming. If you need more performance, you would traditionally write a c++ module.
gdscript is pretty cool... they should build an interpreter or repl into the UI/Editor for quick testing maybe
sir can u make a video about how to use c++ in godot
cuzz i learned c++ pls sir
Thx for unity im here now :D
C++
nice ;D
kto sa pytal
What version of visual studio and vs code should I use for godot mono? Do I just download vscode or do I need to do extra setup? Can I code with c# in the editor?
For VSCode you can use this plugin: github.com/godotengine/godot-csharp-vscode
And for visual studio this one: github.com/godotengine/godot-csharp-visualstudio
@@Gdquest Thank you so much!!!
I haven't used Godot but I do use Unity and I've been a SQL and Windows application developer for over 20 years. If there's one piece of advice I'd give to a new programmer is to go with C#. It's elegant, simple to learn, managed and is the best general language I've used.
If you haven't used Godot you're not really in the best position to offer advice on language choice for it. ;) A new programmer should forget about the 'language wars' and just learn programming concepts in whatever language clicks with them. Yes C# is a good choice career wise, but the problem with it is integration to the IDE and general polish in Godot is still poor. So I would strongly advise a new programmer to use GDScript to avoid unneeded frustration and confusion, at least until C# support improves. VS Code is an option but that's 2 IDE/editors a new dev needs to get familiar with, not ideal. If they really want to use/learn C# they're better off using Unity, or even 'proper' C# in Visual Studio, Rider etc but then they lose a lot of built in graphic/game features of course. If your goal is to make a game, GDScript, if your goal is language experience for career etc , C# elsewhere.
@@Ash_18037I wasn't referring to game programming in either Unity or Godot. My point was if you have no programming experience at all and were choosing an initial language to learn then C# is the most beneficial. I have used GDScript now and for programming in Godot then it has advantages but I still wouldn't recommend it to learn general programming techniques.
Nice video! Your correct about there being 5 main coding languages you can use in godot but you can use almost every language just by getting plugins the only one that isn’t in godot that I know of is LuaU
I good at c++ should I use it or learn GDScrupt
I would pick up GDScript, it's easier to use in Godot and it's pretty fast to pick up. Then you can definitely use C++ when you need to.
WARNING:
Godot 4 DID drop support for Visual Scripting!
So, you cannot use that in Godot 4.
All else remains true.
I wanted to write in C# using VSCode but man oh man was it time consuming to get the intellisense working, so I decided to use GDScript instead
can you suggest a list in order for this series? I don't know which tutorial is next they don't seem to be numbered;.
They should focus on gdscript. I dont understand why opensource software tries to do everything at once.
I can't find any tutorial in Godot with C++. Can you please mention any tutorial?
GDScript is sick but I wish there was a linter for it or something
Hey, I have an important question. For about 7 months I've been making stuff in Lua. About a month ago I started learning C++. Now I want to program a game in Godot together with a friend. The only problem now is that he's been working in C# for a bit longer and I've recently started working in C++. Does it therefore make sense to make the game in C# and C++ or should I rather switch to C#?
I'm probably too late to help if I can but, there are two ways to use c++ in godot, c++ modules or gdnative which has now been replaced by gdextension. You can use C# and C++ together. They are similar since they are both in the C-family but they are still different, which means that you won't be writing in the same language, you won't be able to help each other write unless you know C# or he knows c++. So stick with whichever you choose, just fyi I'm learning C++ as well.
Thanks for the video, very helpful and straight forward
likes
Years ago i made some prototype (or asteroids clone) in unreals blueprints. Took me almost a year (yes i was learning blueprints). However now i scripted similar functionality in godot in about 2 weeks. Many seemingly trivial problems (like global variable) in unreal blueprints are so hidden and convoluted that took me months to discover working solution.
yeah if Unreal just let you use C# I'd be way more keen on it. I hate using blueprints but also hate how poorly documented their C++ APIs are. So I keep coming back to using Unity... but now considering GoDot instead