3 ms·
Are AAA games still coded like this? Where you hack your way to the finish line. Or is there more process and things like code reviews?
by soup10 14y ago
Are AAA games still coded like this? Where you hack your way to the finish line. Or is there more process and things like code reviews?
- chipsy 14y agoThe 90s represented a period of growing pains where the industry was scaling its budgets and team sizes very quickly and, for the most part, didn't have any processes in place to deal with scale or to maintain a codebase for the long term - why would they, when up until that point, games usually shipped within a year or less, and the technology changed with almost every project? Today the picture is still varied, but engineering practices have generally improved - for example, daily standups are popular with many studios now, there's a corpus of books and lectures about how to architect an engine or various subsystems, etc. A lot of today's commonplace material was being put into production for the first time then, and was previously only known in some other context - research, high-end graphics and simulation, etc. In current AAA the bottlenecks mostly lie with the art and design teams. Programmers still have plenty to do, but they're also quite frequently building on old technology that has some roots in the 90s - which entails a whole different set of problems.
- NickPollard 14y agoThings are better now, though certain elements are still present. There's a lot of code churn in games - once a project is finished, unless you're making an immediate sequal it's not uncommon for almost the entire code-base to be thrown out and to start again for the next project. Most games are rather fire-and-forget affairs (with maybe a couple of DLC/patches) so maintainability isn't as high a priority as with a lot of other software. Also the performance constraints make a lot of modern techniques difficult or impossible to use - so you do get a lot of hand-rolled code for things that could be library functions, just because it's a bit faster in a critical game loop. The timelines of game development do lead to things being a bit rushed, and with how much a game can change during development the programmers are often forced to cut corners. On the projects I've worked with I always here at least a few programmers at the end saying "I wish I had time to do this properly, I worked out a great plan for the system, but we didn't have time". That said, engineering practices and management are definitely better - Code reviews are pretty standard now, most studios are better at training and documenting.
- pandaman 14y agoPretty much. I'd not say the SC is even bad - I've seen much worse projects with much bigger budgets. "Enterprise" process would be outlandishly expensive considering the amounts of code and requirements (millions LOCs, running in tight time and memory constraints for hours without crashing or even glitching, even on PC you would not want the user to lose several hours of progress to a crash, on conoles you just cannot release).