
Learn Godot Game Development - studentLS
https://godottutorials.pro/complete-course/
======
desine
I came back to Godot this week, after tying an earlier 2.x build. I've had a
3D game I've wanted to develop for years, and gave it a shot awhile back.
Unfortunately, the tools capable of building what I wanted had too steep of a
learning curve for my free time. Godot, while incredibly intuitive, wasn't
performant enough to make what I wanted.

I built 3.2, including a fork of the runtime for raspberry pi (frt on github).
About 3 hours of youtube videos later, 3 hours of sweat, and I had a
functional 3D tech demo of the idea I had.

It's well worth a look, and per geokon's comment, I too was against the team
implementing a new language, but have since come to love it. It's Python, with
the correct changes for the use case, and it works well.

~~~
Decabytes
That's great to here. Hopefully the improvements that are coming with 4.0 will
make your demo even more performant.

~~~
doc_gunthrop
Using C# in Godot instead of GDScript results in better performance. Roughly
4x better compared to GDScript in some naive cases.[1]

1:
[https://docs.godotengine.org/en/stable/getting_started/scrip...](https://docs.godotengine.org/en/stable/getting_started/scripting/c_sharp/c_sharp_basics.html#performance-
of-c-in-godot)

------
geokon
to somehow who's used it extensively - was a DSL really necessary?

I find the whole idea of a separate language for just developing interactive
media a bit off-putting. It's a huge price to pay over just plugging in an
existing mainstream language. no more tutorials, zillions of references a
robust toolchain, huge community.. etc. but there must be a good reason for
it?

It's also why I don't write elisp. only so many hours in a day.. do I want to
be futsing around in a language I won't ever use outside of the sandbox? not
really...

it's not longer just a library of some language X, but an ecosystem I need to
sorta sell my soul to

~~~
jan_Inkepa
Game dev here. I've used Godot only a little bit, and Unity a lot.

If you're working a lot with a single game engine, it's nice to have a
programming language that's tightly coupled to it.

When Unity moved away from UnityScript (a javascript lookalike but specialised
for their purposes) towards C# they had to e.g. change their notation for
Coroutines which made it a lot clunkier, so instead of just "yield
WaitForSeconds(2.5)" you now do "yield return new WaitForSeconds(2.5f)" AND
change your function signature (add an IEnumerable) AND have to change how you
call the function - lots of cruft where previously it was all
transparent/implicit.

Also, if you're working on your own scripting language you can make it a lot
more aware of the particular data and structure of in your own game (games
have a lot of data!). I haven't used GDscript/Godot a lot, but I remember the
autocomplete being pretty smart and aware of what's going on with your data in
a way that would be hard to do with a "commodity" compiler/IDE tool-chain.

It's a lot of work for them to do this on their end, but I think it pays off.
It doesn't take much time to learn (especially compared to the api/3d scene
interface/etc) and overall it feels slick.

Most of the niceness is sparing on overhead, it's not a fundamentally alien or
goofy language. As a games programmer I have to work with a bazillion
programming languages anyway; if I'm working on a single project it's a real
luxury to have the language be ergonomically fitted to the engine.

There are advantages to using a more general programming language - maybe
using Lua would've been a good option, but yeah for here at least I think it's
fine (ah, another commenter linked
[https://docs.godotengine.org/en/3.2/getting_started/scriptin...](https://docs.godotengine.org/en/3.2/getting_started/scripting/gdscript/gdscript_basics.html),
which talks about this :) ).

On the other hand, if programming juggernaut Unity couldn't justify keeping
Unityscript alive, maybe Godot is also fated to change eventually...

~~~
Decabytes
I like gdscript and my only gripes are that I use python for work and while
gdscript is Python like I find the instances where it doesn't work like Python
frustrating. Auto complete works great and it works even better when using
typed gdscript, though it's still a new feature, and still has some edge cases
that make it a little tricky to use sometimes.

------
babaganoosh89
GDScript is reasonable once you've picked it up and Godot shines for 2D games
because of simplicity compared to Unity. The main hassle that killed it for me
is the effort required to integrate all the 3rd party libraries from ad
companies, analytics, etc. There's not really good support on wrappers for
common 3rd party libraries on mobile. If you're serious about game dev I'd
focus on Unity because that's where the ecosystem is.

------
notagamedev
How timely! I've just started looking into game development and more
specifically Godot today. I'm not exactly sure how I should proceed if my
intention is to make something like Flappy bird for both Android and iOS -
Would Godot be overkill? Should I try to make it with Flutter or React Native
(or would those two be even more overkill)? What size would be too big for it?

~~~
jkirkwood
Check out Corona ([https://coronalabs.com/](https://coronalabs.com/)). It’s a
pretty straightforward 2d engine with support for many platforms. Games are
written in lua which isn’t hard to learn if you’re already familiar with JS.

~~~
rhblake
Corona Labs is shutting down in a couple of weeks. While they're releasing
everything under a permissive license (MIT) and turning it into an open source
project, the future is very uncertain.

~~~
rstupek
the lead developer of the engine is continuing and has support on github to
continue the development.

------
vadansky
Might as well ask here, but if I want to make a third-person shooter, but in
the style of S.T.A.L.K.E.R, would Godot work for that? I've started with
Unreal, but it's starting to feel way too heavy, but I don't want to reinvent
the wheel either.

~~~
Ardon
Godot is currently undergoing a major 3D graphics rewrite/update for version
4.0, with Vulkan support and a big push for 3D feature parity with other
engines.

You could use Godot if you really like the open-source-ness of it, and don't
mind waiting for 4.0 or doing the work to port your game from 3.2 to 4.0. If
you want to get going now, use something else.

------
koziserek
I've been waiting for it so long

~~~
slezyr
Why? I haven't finished their official guide yet, but I already have lots of
bookmarks on different tutorial series like this one

[https://www.youtube.com/user/uheartbeast/videos](https://www.youtube.com/user/uheartbeast/videos)

There is no shortage for godot tutorials anymore

~~~
ASVVVAD
It's a joke about the play "Waiting for Godot"

[https://en.wikipedia.org/wiki/Waiting_for_Godot](https://en.wikipedia.org/wiki/Waiting_for_Godot)

~~~
mrlala
I say this play with Patrick Stewart and Ian McKellen.. basically the
highlight of my life.

~~~
hpliferaft
Truly one of the best acting duos in history.

------
olah_1
Can Godot produce 3D games that are 10x more performant and efficient than
Dreams on PS4?

~~~
freijoqf4oe
Weird comparison to request. Godot doesn't support Ps4. There are some
impressive performant demos with Godot, such as Zylann's voxel plugins. It has
similar issues as Unity, where if you write things in C# or GDScript, the
garbage collector will cause intermittent lags, but C++ is fully supported
where you need it.

~~~
olah_1
I didn’t mean to compare specifically to PS4. I was just clarifying that
Dreams is a PS4 game.

The comparison is more about the framework usability vs the quality of the end
product.

I’m wondering if Godot is maybe targeting similar audiences as Dreams or if
Godot is targeting a more serious developer concerned about things like
performance

~~~
slezyr
Godot targets both, it's used to teach kids programming KidsCanCode[1] and
supports visual programming via VisualScript[2]. Also they work on support for
Vulkan (Godot 4.0) for high perf graphic.

1:
[https://www.youtube.com/channel/UCNaPQ5uLX5iIEHUCLmfAgKg/vid...](https://www.youtube.com/channel/UCNaPQ5uLX5iIEHUCLmfAgKg/videos)

2:
[https://www.youtube.com/watch?v=WW8CJQ8jMBM](https://www.youtube.com/watch?v=WW8CJQ8jMBM)

