5 ms·
Game engines are not good in general, because they do too many things. In my view it's better to pick libraries that do just what you need. It gets a bit worse
by jokoon 4y ago
Game engines are not good in general, because they do too many things. In my view it's better to pick libraries that do just what you need.
It gets a bit worse when you need to write a functionality that is specific to your game, and it becomes too dependent on a certain engine or library, so you can't switch to another library or engine.
Unreal and unity are monsters that allows beginners to have quick access to a high end rendering system, but then it doesn't leave enough room to add new cool things, like cool gameplay, a good multiplayer system, etc, when you want to ship on console who have limited memory.
I'm quite curious about the unreal engine and how fortnite uses it, because PUBG is a similar game, but its performances are quite bad, so it is an easy demonstration that a rich engine doesn't mean your game will be a smooth experience if your developers are not experts, because expert developer can write a better home made engine instead of paying for a rich engine.
These are the good reasons why I don't want to use all-in-one solutions, and this applies for web frameworks too. What's even worse, is that those big things don't just enforce a programming style, they also make it difficult to migrate your code elsewhere.
- 999900000999 4y agoWhen you and your friends go out to get yogurt, do you generally go to a farm to pick out your cow? The big part of what makes Unity easy to use, is just everyone uses it. I can pay an artist to make me some assets which work with HDRP. If I'm building some custom library, with custom shaders, I'm going to have to do much more work to make sure the assets are compatible. You also have to think about the life cycle of code, if I make a small game in Unity and publish it, I'm probably not going to touch it after release.
- ohgodplsno 4y ago>when you need to write a functionality that is specific to your game, and it becomes too dependent on a certain engine or library, so you can't switch to another library or engine. Games are not a thing you just change engines on. You don't paint with oil on a canvas then halfway through it go "you know what, I think aquarelle would be better" and swap out the canvas for aquarelle paper. The engine is a detail of your game and should never be core to it. >but then it doesn't leave enough room to add new cool things, like cool gameplay, a good multiplayer system, etc, when you want to ship on console who have limited memory. You've not given a single look at Unreal, have you ? You have complete access to the entire source, it is modifiable and extendable to do absolutely anything you want, whether through blueprints or directly in C++. No cool multiplayer ? UE's default network replication is good enough to run on pretty much anything today. No cool gameplay ? ABZU (adventure puzzle exploring game), Assetto Corsa Competizione (highly accurate sim racing), Borderlands 3 (FPS Loot shooter), Dragon Ball FighterZ (fighting) as well as many experiments by users, including complex uses of portals and non euclidean geometry, etc. It's not that the engine doesn't let you do cool things, it's that you're a software developer at heart that wants to find reasons to add new features to your engine, instead of making a game. >PUBG is a similar game, but its performances are quite bad PUBG was made by a brand new developer who slapped together assets from the store and hacked away until it barely worked. The whole core of PUBG is rotten and terrible code. So, sure, with home made engine, you don't have this problem because someone like Playerunknown would literally not have had the skills to write the engine and the game would have never existed. It's not an engine problem, it's a developer problem. Think about things for a minute when you do then and you'll have no troubles. It provides you with so many accurate and useful debugging tools that your home made engine will never have if you want to do a performance pass.
- adbachman 4y ago> It's not that the engine doesn't let you do cool things, it's that you're a software developer at heart that wants to find reasons to add new features to your engine, instead of making a game. This is so true. Yak shaving _feels_ incredibly productive. Look at everything I got done today! The same can be true for rewrites, refactors, redesigns (product/graphic designers looove yak shaving), and prototypes. I don't think that makes any of these things objectively bad. It just means there's a difference between wanting to have made a game and wanting to make games.
- akyu 4y ago> Unreal and unity are monsters that allows beginners to have quick access to a high end rendering system, but then it doesn't leave enough room to add new cool things, like cool gameplay, a good multiplayer system, etc, when you want to ship on console who have limited memory. I'm not following you here. These engines are exactly what enable you to add new cool things, and not focus on implementing lower level details.
- booi 4y agoNot to mention the huge library of games from B to AAA that use unreal/unity with things like cool gameplay, multiplayer and multi platform (PC and consoles).. this comment made no sense.
- djmips 4y agoThe comment hits closer to the bullseye than you realize. When you buy into an engine like UE and especially Unity you look at the successes on consoles but in reality you're in for a world of hurt if you want to achieve the same level of perf on the older consoles. It's like the difference between a stock WRX and a rally team prepped WRX - same car sure but the perf is vastly different and if you want to compete on that level you have a lot more work ahead of you.