Comment by opan

11 hours ago

The amount of otherwise decent games that run poorly due to Unity or UE is very unfortunate. I wish people would stop recommending this stuff. I do hope Godot and Bevy are better, but I'm not sure if they are.

To name some games with very bad perf issues that I've played in the last couple years: Core Keeper (Unity), WORMHOLE (Unity, mostly see the lag in endless mode), Crab Champions (UE4, have to use nonsense upscaling stuff that makes the game hideous just to maintain 60fps at 1920x1200).

Meanwhile Terraria, Necesse, and Barony use their own engines and run great, they have aged like wine.

Out of fairness, I'll say Tiny Rogues (Unity) usually ran pretty well from what I recall, though the dev is actually working to move off Unity in the future, so he has clearly found issues with it himself.

I know there is the argument of making a game vs making an engine, and actually getting a game done and shipping it, but when you put out garbage you aren't gonna have a very positive legacy. I think it would be better to take the long way and ensure some level of quality. Games are often played for decades after release and if they are buggy or laggy, people will continue to run into that forever.

> The amount of otherwise decent games that run poorly due to Unity or UE is very unfortunate. I wish people would stop recommending this stuff. I do hope Godot and Bevy are better, but I'm not sure if they are.

Games don't run poorly "because of unity or UE", those engines are highly optimized for the graphical fidelity they provide, It's super easy to find examples of games that run flawlessly with these engines (UE5: Arc Raiders, Unity: Arknights Endfield). Seriously, this narrative is ridiculous and needs to stop.

Some games with those engines run poorly because no matter the engine, if the developers don't take the time to optimize their games, the result will be an unoptimized mess. Is Unity engine responsible for the fact that Cities Skyline 2 devs decided to render the full polygons of every individual's teeth no matter the distance ? There are a ton of tools built in to handle level of details and they didn't use them...

I doubt those unoptimized games would do any better and in a shorter time if the studio had to build their own engines, or with any other available engine. Bevy is too barebones to be compared, and Godot is not as capable as Unity/UE.

  • As someone who's worked professionally with these engines I'd largely agree.

    The other thing to keep in mind is that engines are build towards certain strengths/game-types. Trying to do open-world in UE3 required making some fairly invasive and substantial changes as the engine was built more for somewhat on-rails shooter. It didn't support geometry streaming and a number of other things that are needed to seamlessly transition between large open areas. I remember a number of MMO-style games used UE3 purely as a rendering front-end and mostly built the game tick, physics and netcode back up from scratch.

    There are "tells" for engines if they aren't tuned properly(i.e. it was really easy to tell UE3 by the 30s frame hitch as the periodic GC ran) but a fair bit of that can be addressed if the team wants to put in the time to enhance or rework the systems involved.

> The amount of otherwise decent games that run poorly due to Unity or UE is very unfortunate

The amount is approximately zero. If someone write badly optimized code with Unity they have 200% chance to write badly optimized code with their own engine.

  • The thing about custom engines is that by the time it supports all the features you need, you’ve worked your mindset into optimal engine usage, so you end up being more performant on a hacked engine vs suboptimal code on commercial engine. Home grown always has some unique flavour.

Today I discovered, fell in love with, and returned Tainted Grail because it is horribly, terribly optimized. Apparently the PS5 version is so bad that it’s an offense to nature. Which is sad because it’s apparently a phenomenal game.

Though maybe it wouldn’t have even existed if it wasn’t for Unity.

This is a really bad take, sorry.

1. Engine choice is only a factor in performance. If you build an unoptimised game it will run poorly. Doesn't matter if you do it in Unity or your own engine. 2. Terraria, etc did not succeed because they use their own engines. 3. Those bad performance games have bad performance and happen to use an engine, not the other way round. 4. The quality of your game has a lot more to do with effort, care, etc than the engine you choose to use. You can create a buggy piece of crap no matter how you make it 5. Performance alone is a bad reason to roll your own engine. "Existing engines are not performant so you should roll your own" is a very bad piece of advice. 6. Making a good engine is HARD and a lot of effort. There is no guarantee that you produce anything better because you chose that path.

  • I always argued for custom game engines not for performance but so your game “feels” unique. I can spot a unity or unreal game from miles away. They have a smell if you will that is very hard to escape.

    Every game that has a custom engine just feels unique and interesting in a different way. I think this is why people likely push the custom engine. Any game that passes the finish line on a custom engine often has a level of craftsmanship you dont see in standard engines.

    Oblivion remake while looking good only works because the underlying logic is the same. I personally do not like the visual feel of the remake as it screams asset pack to me.

    • I have to disagree again sorry. I can't speak to being able to "spot a unity or unreal game from miles away," but if you want to make a game, make the damn game not an engine.

      I get the feeling there is a serious survivor bias happening here. Individuals who are talented and knowledgable enough to roll their own engine, make it well and quick enough, maintain motivation AND cross the finish line to actually make a game likely make a pretty good game. Now consider all the other people who tried this path and got stuck along the way. Now you're gonna recommend all that complexity and difficulty to someone because you think games should "feel" unique. Like, its just not based in reality sorry.

      I think there are 2 reasons to roll your own game engine

      1. Making a game isn't your top priority and you're interested in game engines

      2. No existing game engine does what you need it to do and you have enough experience/knowledge to know where you're going

      If you're decision is based on "I want my game to feel unique", "it might not be performance enough" or some other immaterial and ethereal concept I fear you're gonna be set up for failure.

      Noita is a perfect example of when to roll your own. They push the boundaries so much that they absolutely need a custom engine. Path of Exile, another example where their vision REQUIRED a custom game engine.

    • > I can spot a unity or unreal game from miles away. They have a smell if you will that is very hard to escape.

      Confirmation bias. Are you saying Hollow Knight, Cities: Skylines and Escape from Tarkov have the same kind of "smell"?

      It's as ridiculous as saying that you can spot a SaaS written in Rust from miles away.

      2 replies →