I saw the George Carlin of Computer Architecture & Engineering,
Yale Patt, give an interesting talk about five years ago. One of the things he discussed is "What are we doing with advances in computing power?". His answer? Enabling worse, less efficient, more
abstract coding languages, methods and implementations - in a lot of instances. Abstraction is all the computer science wizardry that lets the bare metal and silicon in your computer execute a program written in java (and proceed to infect your computer with bulgarian malware). In Patt's view, the focus in modern undergrad CS classes had shifted so much to making programming accessible, that it pushed language developers to make more and more abstract languages that didn't require an understanding of the fundamental operation of a computer to write in. Programmers can write in a self-contained logical manner, compile for x86 / ARM / *NIX / etc and be done. This makes coding more approachable for people because it requires less mastery in multiple fields - you don't need to understand semiconductor architecture and electrical engineering at all for
most of the popular languages used today. But it comes at a price. Abstraction is computationally inefficient, because rather than your coders writing for the hardware that something will execute on, they're letting software interpreters do all the heavy lifting.
From there, the analogy to Unity writes itself.
TLDR We're all driving chevy 454s, but we left our studded tires on and put scoops on our hoods.