You nailed it!
Catherine runs well enough to justify Gamebryo as a functioning engine. It all comes down to what we define a "Bad" engine as.
Un-optimized? Poor performance? Restrictive?
At the risk of losing my mind again...
These threads are ridiculous because they have a way of self fueling without EVER reaching any sort of conclusion or furthering the point. They are like "troll, the forum thread".
So. In order to even say a thing about this, we have to DECIDE what a "bad engine" even IS.
What is good and bad re: game engines?
For example:
1- It can be how flexible is the overall toolset, how many different games you can do with it. An engine could be excellent to make a great FPS, for example, but it would be insane to make a 2D sidescroller on it. Or an engine could be excellent to quickly make 2D tiled game, but of course you wouldn't be able to make a 3D game with it.
In this specific case, Unity is EXCELLENT. Because
it's powerful, flexible and well documented. It's enough high level to be easy to develop on, but not too low level to require you to put there the same amount of work of starting basically from scratch. On the other side if you were making a purely 2D game it would be still better to lean on something like GameMaker, because it's more suitable for 2D than Unity, and more accessible and faster to develop on.
2- Or maybe we consider a game engine not as a toolset, like Unity, but a complete system that runs a game. Like an open world built by the TOTALITY of its systems. It means we include low latency, responsive controls, great AI with realistic, emergent and simulated behaviors (think Dwarf Fortress), a well simulated open-world, weather systems, day/night cycles, scheduled NPCs that react to everything around them, excellent, responsive UI. And in the end also realistic, life-like, complex graphic fidelity with complex lighting.
From GTA4 to Skyrim or Fallout we actually don't even have that many games that attempt this Big Picture of a good game engine.
3- We purely measure a game engine by its graphic renderer. The amount of complex graphic it's able to put on screen matched with the actual performance. How many shaded polygons with lights and shadows it can move on a fixed hardware.
In this case an engine like Unity provides some good aspects, like physically based rendering, so the potential to match the easy of use with actual advanced, modern graphic. But due to the fact Unity is a shortcut of development and built as a generic engine working on a wide range, it also can't even remotely match the raw performance of a custom-based engine that is accurately optimized for a single game.
The ease of use always comes at the cost of some flexibility of what you can do, and if you spend a lot of time rebuilding Unity own system for more custom purposes then you also lose their advantage.
But in THIS case, if we measure purely the graphic performance and quality Unity isn't even remotely close to an AAA custom engine. You can't make The Last of Us or GTA4 in Unity and expect the same level of performance of their custom engines. The same was with Gamebryo. And both of these have their own problems by having to force co-exist different engine parts not so well integrated. Like SpeedTree being its own engine integrated in Unity or Gamebryo. And so on.
It becomes a really big engine where modifying one part might break something elsewhere. And maybe a specific game doesn't use that part, so it's good, while another suddenly runs like crap because the new change worked not so well with the different structure. Maintaining a flexible engine like Unity is HARD because what would be ideal for "x" game might be not good for "y" game, and your goal is to support both, so you are limited in what you can do, when optimizing.
If pure performance and graphic fidelity is the primary goal, Unity is not a good choice. Gamebryo is/was not a good choice. Middleware always comes at a cost. UE4 too.
A game engine is a tool. Yes. It can be a good tool for a single type of game, and be good at it. or maybe it can be a very flexible engine like Unity.
But Unity, if we consider purely performance and advanced graphic is: "Jack of all trades, master of none".
So was Gamebryo.
P.S.
Catherine didn't put on screen sweeping vistas with a long clip plane, complex lighting and whatnot. It was a relatively graphically simple game. Every single engine in existence CAN run at high fps if you limit what you put onscreen. Catherine and Skyrim, even if they might have engine parts in common, not even remotely have to deal with the same graphic fidelity.