[HN Gopher] 2022: A Retrospective
___________________________________________________________________
2022: A Retrospective
Author : Tomte
Score : 96 points
Date : 2022-12-31 15:12 UTC (7 hours ago)
(HTM) web link (godotengine.org)
(TXT) w3m dump (godotengine.org)
| Waterluvian wrote:
| Something I learned in 2022 through Godot is why these engines
| often seem to write their own scripting language. It frustrated
| me for years: I don't want to learn your custom language. Just
| use something that exists!
|
| But after spending time making some games for fun and learning, I
| realised: 90% of making a game isn't coding. The code is usually
| just glue, and you aren't hiring software engineers at crazy tech
| salaries to do that. You're empowering your game devs to do it.
|
| (Of course there's a lot of more complex coding in many games,
| and there's bindings for other languages when you need that).
| jayd16 wrote:
| The goal is usually to have a scripting language for quick
| iteration to go along with something with better perf but needs
| a longer compile.
|
| As you said, it's about empowering the devs, artists and
| designers, not about perfect code.
| jeremyjh wrote:
| Also the scripting language is tightly integrated with the C++
| object model without a lot of binding code because they can
| rely on conventions in defining C++ classes and native
| facilities built into the scripting language. You don't really
| need to develop native C++ extensions anymore but it's a really
| neat system to work with when you do.
| m3Lith wrote:
| So you exclusively used GDScript? I find myself kind of on the
| edge of trying it out. I have experience with C#, so just
| wondering if it would be worth it.
| Waterluvian wrote:
| I use it for 95% of the code I write. But then I have the
| occasional CPU intensive code and I drop into (attempting at
| the moment) Rust.
|
| Note that I make toy games for myself. I can't speak to games
| targeted for release.
| jpswade wrote:
| The code is not the value.
| reassembled wrote:
| GDScript seems very similar to a simple Python syntax. I really
| had no problem picking it up when working through some Godot
| tutorials. The syntax is so simple that if you ever needed to
| port it to another language it should be quite trivial to do
| so. I would be interested to hear the experiences and opinions
| of anyone who's written a considerable amount of GDScript
| though.
| johnfn wrote:
| Agree with this. I'm a huge proponent of static typing systems
| and good languages, so seeing Godot create their own language
| was a huge sticking point for me - I even created a typescript
| to gdscript compiler! But after a while, I realized that
| GDScript was remarkably productive, even though it lacks a lot
| of the bells and whistles that I'm accustomed to.
| drpossum wrote:
| I want to give some kudos to the author at being classy and not
| mentioning Unity's missteps and focusing on the good stuff they
| did internally. I've been impressed by how relatively coherent
| Godot has been and fostering the community around it.
| dopeboy wrote:
| Very much an aside and downvote if too much of a tangent - if I
| wanted to create a command and conquer like game (ideally like
| generals where it is 3d) - how would I go about doing that? Is
| Godot an appropriate engine for that?
| amitmathew wrote:
| Very possible! I'm in the process of building a C&C-like
| prototype, except 2D. I'm hoping to post a tutorial + code in a
| couple of weeks on our site (link in profile). If you want some
| assets to get started, you can use a free asset pack we
| released and the one I'm prototyping with:
| https://quiver.dev/assets/art-assets/outpost-assault-
| tower-d.... You'll definitely want to read up on the navigation
| system in the Godot and I imagine fine-tuning that will be a
| bulk of the work. If you have any questions, feel free to send
| an email (in my profile).
|
| If you are looking for a 3D tutorial, this one seems pretty
| good: https://www.godotrts.com/courses/rts-game-development-
| course... (but I haven't used it myself).
| brainzap wrote:
| love generals, would also want to play it
| karpierz wrote:
| Any engine is fine; the hard part is getting familiar enough
| with the framework to execute you vision on it. And developing
| the ancillary skills (broadly artistic talent/vision, and
| familiarity with art tooling) to do so. Or having someone else
| to outsource that to.
|
| Unity has a much larger community and will have much more in
| the way of intro tutorials, so I started there.
|
| But regardless of the engine you choose, you'll probably spend
| the better part of a year building tiny games (like tic-tac-toe
| -> pong -> breakout -> Tetris -> etc) before you can execute on
| anything more complicated (like a 3d RTS).
| vvanders wrote:
| Any engine can work, there are advantages with choosing
| engines that people build similar games with. I spent ~6mo
| "adding" core engine features(LoD streaming, etc) to a UE3
| open-world title because most of the games on UE3 at the time
| were very on-rails shooters.
|
| That said I agree 100% with building tiny games in an
| iterative fashion to understand the engine you're using, or
| taking a very narrow "vertical slice" to help flush out where
| the technical or game mechanic issues will be.
|
| There's a wealth of good engines out there today where you're
| building on in some cases literally decades worth of
| development that can accelerate a lot of the work involved in
| building a game(and there is a _lot_ of work there).
| nassimsoftware wrote:
| Really glad to see successful games made using Godot like Dome
| Keeper. This helps signal to others that Godot is viable for
| gamedev and will probably have an added effect in its adoption.
|
| I however still prefer to use Love2D as I found the code first
| approach works well with how I like to code games. The cool thing
| with Love2D is that there are a lot of libraries that you can use
| that help you save time.
|
| It's analogus to Django VS Flask where Django is Godot and Flask
| is Love2d where you have to hand pick libs you want to use.
___________________________________________________________________
(page generated 2022-12-31 23:01 UTC)