3 ms·
This is part of the advantage of the "Unix Philosophy": many small, easily understood processes that work in tandem to produce a complex outcome. Each individua
by dleslie 5y ago
This is part of the advantage of the "Unix Philosophy": many small, easily understood processes that work in tandem to produce a complex outcome. Each individual process is less prone to knowledge decay.
However, this is moot in gamedev. We throw everything away before starting the next project because we don't "own" the IP from the last project.
- shadowgovt 5y agoI also strongly suspect that game development slightly favors a monolithic approach because performance is key, and it's extremely hard to maintain maximum performance with thick abstractions. Inevitably, you find out you can do something faster if you stop making a function call or treat a binary representation in two different ways in two different places in the code and abstractions leak and break. Unless all the small processes are designed with a very firm pattern underpinning them that happens to be the correct pattern to maximize efficiency, you'll inevitably find a situation where two subsystems need intimate knowledge of how each other work to maximize performance.