Are there any pointers or resources you can give me to start out that can point me to the right direction to learn GDScript? I have no experience in coding in general and I’m looking to get started with Godot and using GDScript. Thank you.
My biggest piece of advice is to start small. This is extremely important in my eyes. When you’re just starting out, you will almost certainly be super inefficient, writing code that’ll cause you a ton of headache down the line. Prepare to abandon tons of projects. (I feel like this is something that gets said a lot, but no one actually pays attention to.)
A big help with this is starting with 2D projects. They are a whole lot simpler and they let you put more focus on things like learning how scenes and nodes work.
From there, you can read stuff like the GDScript reference page on the docs but ultimately the best way to learn is by doing.
My preferred way of learning things was to set my sights on adding some kind of feature, and then whenever I hit a wall, or I don’t understand what something does, then I search it up. The docs are incredibly useful for learning about what different things do, and there are a lot of questions on ask.godotengine.org with answers that have been very useful to me.
There are also a few built-in script templates (at least in Godot 4). For example when you create a CharacterBody2D node you can get an example script for a basic platforming character. Although these came into existence after I learned the basics, I imagine analyzing them would prove very useful.
This is really good advice. I’d say try to pick up the basics by following along with a tutorial or two so you understand the syntax and core concepts and then move on to implementing some simple gameplay mechanics that you’re interested in. I’ve seen people fall into an endless loop of doing tutorials, but without having an actual reason to keep pushing yourself it’s easy to lose motivation.
Making games can be incredibly rewarding - it’s all about getting into that positive feedback loop by seeing progress on projects you care about.
Older post, but I’m surprised nobody posted the interactive GDScript tutorials by GDQuest: https://gdquest.github.io/learn-gdscript/
I can’t attest to it’s quality for beginners, but I’ve been really curious how it works to know if it’s a good resource for my students, but it looks quite nice to me!
This script will rotate a MeshInstance2D node clockwise on the screen:
extends MeshInstance2D var rotation_speed: float = 1.0 func _process(delta: float) -> void: rotate(delta * rotation_speed)
- Create a new scene
- add a MeshInstance2d
- set it’s Mesh parameter on the right to new BoxMesh
- scale it and put it in the middle of the screen
- add this script to it
- press play
If you’ve figured out to do the above correctly, you will see a box spinning clockwise on your screen.
Now figure out how spin it counter-clockwise
After that see if you can figure out how to move it to the left. Then see if you can move it back and forth.
Congratulations! You’ve started :D
GDScript is based on Python so I would learn basic programming with Python first before I tackled game engine programming.
Here’s a couple of basic courses at Udemy:
When you have basic programming knowledge, this course starts you from scratch to build a game with Godot using GDScript:
I’m doing the Godot course, it’s pretty good…makes no assumptions about your game development knowledge at all. No, I don’t work for Udemy :) Buy the courses when they go on sale, they always go on sale :)
I’ve seen quite a few people suggesting to learn the basics of python first, so I’ll probably do that. Those courses are currently on sale for $19.99 each where I’m at, so I might snag them. Especially because I have a lot of free time on my hands right now. They have video samples of their courses, so I’ll probably check that out before making a decision. Thanks for the course recommendations!
Just keep in mind that GDScript is actually a different programming language, so things like method names, libraries etc. don’t carry over. It mainly shares the syntax of having no {} braces and semicolons, as well as using indentation to group statements after a colon (:).
So while it’s definitely helpful to learn programming fundamentals like if statements, for loops etc. in Python, you could do the same in GDscript with a similar experience (but maybe a little less learning materials available).
I can recommend GDQuest’s interactive GDscript tutorial that takes you through all of the basics and is more hands on than just reading/ watching lots of tutorials:
https://docs.godotengine.org/en/stable/about/introduction.html
The website itself is a fantastic resource, with plenty of links to tutorials including their own. Documentation is built into the editor, and functions are searchable.
https://gamefromscratch.com/?s=godot I really enjoy his youtube channel and is overall a great resource for anything game dev.
I’ll check out the website and that channel. Thank you!