Game Engines—What Are They?
Game engines are software development tools designed to reduce the cost, complexity, and time-to-market required in the development of video games. These software tools create a layer of abstraction on top of the most common tasks in developing video games. The layers of abstraction are packaged together into tools designed to function as interoperable components that can be replaced outright or extended with additional third party components.
Game engines provide tremendous efficiency benefits by reducing the depth of knowledge required to make games. They can be minimal in their prebuilt functionality or full-featured, allowing game developers to focus entirely on writing gameplay code. Game engines offer an incredible advantage over starting from scratch for solo developers or teams who just want to focus on making the best game possible.
The First Way to Build a House
Excavate the ground using a hand shovel until you’ve dug sufficiently deep to plant the foundation. Make concrete by heating limestone and clay at 2,640 °F in a kiln, grind it, and mix in a bit of gypsum. Take the powdered concrete you’ve created, mix it with water, crushed stone or fine sand, and lay your foundation. At the same time you lay the foundation, you’ll need steel rebar to strengthen the concrete. Gather the iron ore required to make steel rebar and smelt it in a blast furnace to make ingots. Melt and hot-roll those ingots into sturdy reinforcement bars for the concrete foundation.
The Second Way to Build a House
Purchase bags of premixed concrete, steel rebar, treated lumber from a mill, a dozen boxes of paper-tape galvanized nails, and a pneumatic nail gun. Mix and pour your concrete to create your foundation, lay down the premade steel rebar, let the concrete set, then build out your floor with the treated lumber.
About the First Approach
The first way of building a house requires tremendous amount of knowledge simply to create the materials needed to begin building a house. This approach requires that you know the precise ratio of raw materials needed and techniques to make concrete and steel. You’ll need to know how to fell trees without ending up pinned underneath one, and you’ll have to know the proper chemicals required to treat the lumber, which you’ve taken great pains to cut into hundreds of uniform beams. Even if you possessed all the knowledge required to build a house this way, it would still take you thousands of hours.
About the Second Approach
The second way of building a house assumes that you aren’t starting entirely from scratch. It doesn’t require that you know how to work a blast furnace, fell hundreds of timbers, or mill them to make lumber. The second way allows you to focus entirely on building the house instead of making the materials that you’ll need to build the house. Your house will be constructed faster, cost less as a result, and probably be higher quality, provided you carefully selected the materials and know how to use them.
It is impossible to overstate the advantage that game engines give to the independent developer or the big-studio team working on the next hit game. Some developers want to write their own game engines as a programming exercise to learn how everything works under the hood, and they will learn a tremendous amount. But if your intention is to ship a game, then you’re doing yourself a disservice by not using a premade game engine.