Tomcat I don't see anything complicated about it. If by "simple" you mean brute force, you'll get disappointed a lot in your gamedev efforts. Almost everything that looks like it was done by "simple" brute force in your favorite games - is always handled by some sort of algorithmic trickery. The reason is, of course, to lower the performance cost.
A familiar example would be frustum culling. A scene can have many objects, but only a small fraction of it that's inside the camera frustum is actually processed by the rasterizer. Or... the snow and rain particles only exist in the shallow range around the camera, although the final illusion is that is falls "everywhere", etc...
It's never simpler, but it's certainly - better. And in most cases - necessary. Generating a particle for every snowflake in the world is very simple, but not feasible. So you need something more complex that actually does the job of selling that illusion within your performance constraints.
Everything in games is done with this mindset - use only as much computing bandwidth as it's enough to sell the illusion. You'll do well to apply it to your thinking. It does require a certain degree of creativity to be thrown into the mix when considering technical approaches for various systems within a game.