Game devs of lemmy, what are the best game engines for beginners, also why so?
So i may or may not get into game dev but im thinking of using a fantasy console becasue of lua or maybe godot becasue everyone says to use godot i guess. ive treid running unreal, unity on my low en dpc but they just dont work also there not really open source and open source is cool.
i havent really made a game before i usally just copy and paste code from the internet or chatgpt... also id ther eanything else you want to share like what are beginner ideas, how didi you learn, or whatever thing you think of.
im not even sure if i want to get into game dev or not but it seems interesting.
I don't see any other comments, not sure if it's my instance acting up.
But, anyways, I started with godot (I'm still learning myself) and I don't regret it.
At first I felt like I would rather be learning unreal or unity since it would be more useful in the business world, has better graphics and such. But I'm having a blast learning godot and I honestly have high hopes for the future regarding godot. The new demos look amazing and there are some people on YouTube with insane graphic demos on Godot. Really surprising stuff.
Plus, as you said, open source is great.
Only downside to godot is that since a major new release came out recently, a lot of the tutorials and guided are a bit outdated. You can still kinda follow along with some basic logic and ingenuity though.
The only other comment I see is mine. One reason you might not have seen it is the language was set to "Undetermined" because Jerboa does not have a language selector. If you don't have "Undetermined" as one of the languages on your account settings I think you won't see posts or comments with that language tag. So if you see this comment (which is set to English) but not my other one then that could be why.
What's your coding background? Like any languages specifically?
I'm not a game dev but I teach computer science so I've looked into game dev as a way to spark student interest. Godot is also the one I've heard recommended most frequently, but it seems like it helps to have some knowledge of design tools. And of course you'll be learning their proprietary language.
I've played around with PyGame before, which is a library for the Python language. It was easy to start with and great for small projects. You're probably not going to be making a commercial product with it (although there are one or two commercial games made with PyGame) but you'll learn more about programing than you will with a complete have engine like Godot or Unreal.
I'll also put in a plug for Love since you mentioned Lua. Never used it but I hear great things.
i have bacilly no coding backround besides jumping around frameworks and immdently giving up, and im trying to be better at it now, also school use to teach us about scratch but we never really got to use it. i also know most fantasy consoles either use lua or python and lua seems easy to manage with.
Starting a project that's going to hold your interest is one of the best ways to learn. Start with a manageable project. I knew one guy that started with a 3d spaceship design game. Something like Space Engineer. He burned out super quick. Start with like pong or something that you could feasibily have working in a few weeks. Little successes keep you focused.
I'm also going to say that game dev jobs often aren't great. Games are a great way to learn coding skills, but instead of trying to pick the very best have engine try making a game in a language that's easily portable to other job skills.
But like I said, I'm not a game dev so take anything I say with a grain of salt.
For an absolute beginner: Godot if you're not super familiar with programming, PyGame or SDL if you are.
If you are planning to move commercially, it'd behoove you to upgrade your PC to at least be able to use Unity. Unreal is definitely not where I'd suggest unless you're a C++ person or have been in game dev for decades at this point. Pico-8, RPG Maker, and etc are fine but not where I'd devote any real effort or time other than making something one off.
I've worked a bit in serious gaming before, as back-end developer. Normally, you choose an engine that suits the needs (and resources) of the game you're making, and then you'll still do tons of scripting and possibly changes to the engine. In some cases, you might be forced by circumstances to use a certain engine, then you'll do even more alteration. In other cases, you might make your own engine, which is the most time consuning and complex but gives the best match with your aspirations for the game. It's made to measure after all. Either way, without coding it'll be impossible to make a game.
Since you have no experience coding, start small. I've seen many people with big dreams but little experience starting on a big project thinking their great engine-of-choice will carry them, and it just never works out. Do something simple like Pong to learn, then slowely go more complex each time you made something work. You can follow tutorials, but make sure you understand what you're doing, don't blindly copy-paste. Once you understand what you're doing, switching between (scripting) languages isn't too hard anymore.
I don't know what your aspirations are, but realise that fancy AAA games aren't something you'll teach yourself as a hobby project over night. 3D adds a lot of complexity, wanting to be able to make your own shaders and engine changes even more so. Game AI can also get quite complex, depending on how far you want to take it. Big games have a whole team of people specialising at different things for a reason, doing that all alone is hard. But for a hobby project without time limit it can be fun!
Take it one step at a time and have fun with it. Especially when it's a hobby, not your job. And remember, liking games and being a game dev are two very different things! I've seen a lot of people wanting to become game devs because they like games. And that's ok, as long as you're interested in the technical side of it. Because it is quite technical, games are some of the hardest things to program. You'll be doing a lot of math and stuff. So if you just like playing them, maybe ask yourself if development really what you want to do. But if you like the technical side, have patients and are willing to learn. Go for it! But start small and take it one step at a time.
It's hard to give more specific advice really. As with the engine choice, it all depends on whát kinda game you're making and what your aspirations are.
My experience with game development is fairly cursory, but I actually found Tic-80 to be a lot of fun, and a fantastic way to get used to game dev concepts without becoming too tied down learning about semantics (although, if you continue to pursue serious programming, taking semantics seriously and practicing them should definitely be part of your approach).
The main thing when learning any type of coding is that you're learning to do things that interest you. After that, a lot of what you'll learn is actually quite transferable.
So, my recommendation is Tic-80. Can I just ask, though: what passes for a "low end pc" these days? (I ask this as someone who was stuck using a Pentium 4 until September 2017, and so my current 2nd gen i5 still feels light it's lightning-quick!)
ive heard about tic-80 and it sound sgood from what ive heard about it, so i might have to give it a shot.
also my pc is a "refurbished" windows 7 office desktop that had been updated kinda but its hard to run mos tmodenr things on it even with a nvidia 1030 card, and i wish i could run thing slike stable diffusion but it crashes when i try to install it also unreal does the same, like my pc freezes and i have to reboot it.
There isn't really a "best", it's more a question of what type of game you're interested in making, any particular skills you're coming into it with, what sort of places you might want to work in future (if that's your goal) etc etc. But since you said technical specs are an issue, that seems like the most pertinent thing to figure out. Which ones will actually run on your PC?
Unity and Godot seem to be the two most popular at the moment and both have a lot of resources and tutorials available, so if Unity won't run on your PC and Godot will...decision made. If neither will work, then you can look at some of the smaller more niche engines.
Sadly I can't write a long comment on this now but in general:
Learn a bit of programming BEFORE you get into game engines. You'll thank yourself a lot, and if you don't you will lack essential skills and concepts that will constantly make you have to stop what you're doing and go back to learning basics. I really don't recommend getting into game dev without knowing anything about programming. You should know what functions and classes are, and have a little bit of knowledge on Object Oriented Programming. It's not as hard as you think and likely won't take that long if you really get into it.
In terms of game engines, Godot and Unity are the most beginner friendly. I honestly wouldn't recommend fantasy game consoles like Pico-8 to beginners. They're intentionally limiting and force you to use old techniques that are harder than what's available today. Unreal is also more oriented towards companies than individuals, and requiring either C++ or using their bulky blueprints system is a negative for me.
Temper your expectations. Make tiny 2D games to start. You won't make a quality first person shooter or some open world game at the start. Keep it simple and small and slowly build up from there.
The biggest mistake by far are people getting stuck in "tutorial hell". Unless you know what you're doing, I'd consider buying courses (I recommend gamedev.tv) or following a playlist on youtube that teaches from 0. You'll get frustrated quickly if you're constantly jumping from source to source, and you'll probably walk away missing a lot of info.