Ask HN: How to move from traditional tech into game dev?

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
  • Godot

    Godot Engine – Multi-platform 2D and 3D game engine

    Suggestion: try doing it as a hobby before doing any major career changes.

    > I love games

    Many do, but game development can be tedious sometimes, or you might just discover that you like something else more.

    # Game engines: Godot

    For an easy start at putting something together, consider downloading Godot: https://godotengine.org/

    It's a free game engine that's relatively simple, is open source, and supports both 2D and 3D, as well as has their own scripting language called GDScript (that should be easy to learn if you know Python), whilst also supporting C# (which is used more commonly in the industry). The documentation is pretty good, though you can also watch videos, like this channel for example: https://www.youtube.com/@Gdquest/videos

    Follow the tutorials and try to put your own game together, see what working with maths/physics/things like raycasts is like, what it's like to deal with a game loop and scene trees, how logic that's attached to various nodes/objects interacts. Don't make the game anything complicated, start out with something like pong, breakout or snake.

    # Game engines: Unity

    If you want to focus more on what's used in the industry, rather than something that's just approachable, download Unity: https://unity.com/

    You can do this as the first step as well, though you will have to use C# for the most part (though you can get Lua plugins, IIRC). This engine also has a rich ecosystem around it, as well as lots of different assets/plugins in the store, some of which are free. Do be warned that it's somewhat fragmented in the recent years (URP/HDRP, DOTS, networking and UI) so some things might be a bit confusing and it can get problematic to work with when you're dealing with larger projects. I recall Brackeys making some nice videos a while back, though apparently there's no new content: https://www.youtube.com/@Brackeys/videos

    # Game engines: Unreal

    Alternatively, if you're comfortable with even more complexity and lower level languages, go for Unreal: https://www.unrealengine.com/en-US

    Admittedly, on the programming side of things it also supports Blueprints (visual scripting), but you'll probably be working in C++ with it as well. It can feel more coherent than Unity, but can also be more challenging to work with and some suggest it's optimized towards particular types of games. That said, the graphics and LOD solutions are excellent, so it's an especially good choice if you want something visually striking (though Unity's HDRP can also look good with some work).

    # Game engines: other

    There's also the option of looking into lesser known engines like Stride for example https://www.stride3d.net/ but while many of them will be interesting, you can't really compete with the amount of resources about Unity, Unreal (and perhaps more recently Godot) out there.

    There's also the option of trying to write your own engine, but at that point you're most likely no longer writing a game and might not ship anything at all. For an example of someone's gradual descent into insanity (joking, sort of), look at Randy: https://www.youtube.com/@bigrando420/videos

    # Other software

    As for supporting software, for modeling/texturing/animations you'll probably want something like Blender: https://www.blender.org/

    For image editing, GIMP is free: https://www.gimp.org/

    For drawing, consider Krita: https://krita.org/ or FireAlpaca: https://firealpaca.com/

    For simple audio editing, Audacity is okay: https://www.audacityteam.org/

    If you just want ready made game art, consider looking at OpenGameArt: https://opengameart.org/ or something like that, personally I think that Quaternius has some nice ones if you're not picky about the style: https://quaternius.com/ or there are occasionally compilations of free songs etc. on various Reddit communities I think.

    For version control, you can get by with Git, but please consider Git LFS: https://git-lfs.com/

    # Summary

    All of this doesn't mean that you need to release your own game on Steam or Play Store or wherever, merely play around with the tech and familiarize yourself with the different aspects of it all, to figure out what you like or don't like.

    If you do decide to release a game for whatever reason, tamper your expectations and don't be afraid of failure. Consider what the launch of Brigador was like, despite it being an arguably good game: https://www.youtube.com/watch?v=qUsuusNLxik

    After three to twelve months of this, you should be able to figure out whether you want to make the career change or not. At that point you already have a CV with past work experience on the programming side of things, as well as a little portfolio of demo projects and such, then it becomes a matter of networking and such. Building out in the open is also an option.

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • book

    Documentation on how to use the Rust Programming Language to develop firmware for bare metal (microcontroller) devices (by rust-embedded)

    It’s not a job, but I’m guessing you would like this book: https://docs.rust-embedded.org/book/

  • PhysicsExamples2D

    Examples of various Unity 2D Physics components and features.

    Suggestion: try doing it as a hobby before doing any major career changes.

    > I love games

    Many do, but game development can be tedious sometimes, or you might just discover that you like something else more.

    # Game engines: Godot

    For an easy start at putting something together, consider downloading Godot: https://godotengine.org/

    It's a free game engine that's relatively simple, is open source, and supports both 2D and 3D, as well as has their own scripting language called GDScript (that should be easy to learn if you know Python), whilst also supporting C# (which is used more commonly in the industry). The documentation is pretty good, though you can also watch videos, like this channel for example: https://www.youtube.com/@Gdquest/videos

    Follow the tutorials and try to put your own game together, see what working with maths/physics/things like raycasts is like, what it's like to deal with a game loop and scene trees, how logic that's attached to various nodes/objects interacts. Don't make the game anything complicated, start out with something like pong, breakout or snake.

    # Game engines: Unity

    If you want to focus more on what's used in the industry, rather than something that's just approachable, download Unity: https://unity.com/

    You can do this as the first step as well, though you will have to use C# for the most part (though you can get Lua plugins, IIRC). This engine also has a rich ecosystem around it, as well as lots of different assets/plugins in the store, some of which are free. Do be warned that it's somewhat fragmented in the recent years (URP/HDRP, DOTS, networking and UI) so some things might be a bit confusing and it can get problematic to work with when you're dealing with larger projects. I recall Brackeys making some nice videos a while back, though apparently there's no new content: https://www.youtube.com/@Brackeys/videos

    # Game engines: Unreal

    Alternatively, if you're comfortable with even more complexity and lower level languages, go for Unreal: https://www.unrealengine.com/en-US

    Admittedly, on the programming side of things it also supports Blueprints (visual scripting), but you'll probably be working in C++ with it as well. It can feel more coherent than Unity, but can also be more challenging to work with and some suggest it's optimized towards particular types of games. That said, the graphics and LOD solutions are excellent, so it's an especially good choice if you want something visually striking (though Unity's HDRP can also look good with some work).

    # Game engines: other

    There's also the option of looking into lesser known engines like Stride for example https://www.stride3d.net/ but while many of them will be interesting, you can't really compete with the amount of resources about Unity, Unreal (and perhaps more recently Godot) out there.

    There's also the option of trying to write your own engine, but at that point you're most likely no longer writing a game and might not ship anything at all. For an example of someone's gradual descent into insanity (joking, sort of), look at Randy: https://www.youtube.com/@bigrando420/videos

    # Other software

    As for supporting software, for modeling/texturing/animations you'll probably want something like Blender: https://www.blender.org/

    For image editing, GIMP is free: https://www.gimp.org/

    For drawing, consider Krita: https://krita.org/ or FireAlpaca: https://firealpaca.com/

    For simple audio editing, Audacity is okay: https://www.audacityteam.org/

    If you just want ready made game art, consider looking at OpenGameArt: https://opengameart.org/ or something like that, personally I think that Quaternius has some nice ones if you're not picky about the style: https://quaternius.com/ or there are occasionally compilations of free songs etc. on various Reddit communities I think.

    For version control, you can get by with Git, but please consider Git LFS: https://git-lfs.com/

    # Summary

    All of this doesn't mean that you need to release your own game on Steam or Play Store or wherever, merely play around with the tech and familiarize yourself with the different aspects of it all, to figure out what you like or don't like.

    If you do decide to release a game for whatever reason, tamper your expectations and don't be afraid of failure. Consider what the launch of Brigador was like, despite it being an arguably good game: https://www.youtube.com/watch?v=qUsuusNLxik

    After three to twelve months of this, you should be able to figure out whether you want to make the career change or not. At that point you already have a CV with past work experience on the programming side of things, as well as a little portfolio of demo projects and such, then it becomes a matter of networking and such. Building out in the open is also an option.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts

  • A Beginner's Guide to Game Development

    2 projects | dev.to | 22 Jun 2024
  • How hard would it be to code a "point and click-y" game as a total beginner

    3 projects | /r/gamedev | 18 Apr 2023
  • Best tools for amateur devs?

    2 projects | /r/gamedev | 14 Apr 2023
  • can you rate it is it hard to do this?

    2 projects | /r/code | 5 Mar 2023
  • I'm programming a game and could use help on basically everything

    2 projects | /r/programminghelp | 12 Nov 2022