4 ms·
> From what I've seen game industry has terrible software engineering practices. You'd be surprised. Here's a talk from Croteam on how they test their games an
by senko 6y ago
> From what I've seen game industry has terrible software engineering practices.
You'd be surprised. Here's a talk from Croteam on how they test their games and engine: https://m.youtube.com/watch?v=YGIvWT-NBHk https://m.youtube.com/watch?v=YGIvWT-NBHk
I'd wager all major engines are exhaustively tested.
Trouble is, there's combinatorial explosion of game state, user input, assets, scripted behaviour and engine, so there's a huge area to cover.
- reader_mode 6y agoI mean he's basically saying what I am - they are the exception, very few teams are doing it, no public information on how to do it or best practices, everyone reinvents everything on their own from scratch. I'd wager the popular engines are well tested because of the number of titles shipped on them not because they have good testing automation - but TBH I haven't worked in this industry for almost 10 years so maybe things changed.
- megameter 6y ago10 years ago was right when "TDD" became hugely hyped. Before that, test automation was patchy throughout the software world, not just in games. I believe the same is true of "best practice" today: game studios aren't actually behind the curve, you just don't hear much about how things are progressing on this end because most of the conference talks aren't about broad concerns like testing, they're about the myriad specialities of the field. And there absolutely is a legacy-code thing that hinders AAA in many cases. When the engine is old, that's good, because it's shipped something, but it's bad, because it's using older practices and Things Have Moved On.
- reader_mode 6y agoThat's a fair take too - maybe TDD wasn't as widespread in general so I just got onboard when everyone else did. Although I should note I'm not a fan of TDD and it's not something I would recommend for games or anything similar - it's a very narrow tool - I think you agree because you put "TDD" in quotes I just don't want to make it sound like I'm recommending it - I'm a fan of automated testing.
- ensiferum 6y agoAt least UE4 is not well tested at all. Most of the code doesn't have any decent tests. It's all "developer writes the code and runs once on his machine and then pushes to prod" type of code.
- bmurphy1976 6y agoIs that UE4 or games written in UE4? I can totally believe it for games written in UE4, but the engine itself? Doesn't pass the sniff test.
- homarp 6y agohttps://docs.unrealengine.com/en-US/TestingAndOptimization/Automation/index.html https://docs.unrealengine.com/en-US/TestingAndOptimization/A... is the overview of the automation system used for unit testing, feature testing, and content stress testing.
- ensiferum 6y agoThere's some built-in testing functionality for the games but there aren't much tests for the engine itself in the source package. Oh and I spent about 3 years working with UE4. The engine is a bug fest.
- dafelst 6y agoI've been working professionally on a UE4 game with a license to the full UE4 engine codebase, I can confirm that the engine has some unit and functional tests, but the overall coverage is abysmally low.
- TinkersW 6y agoThat isn't really true, Unreal uses assertions heavily, see https://docs.unrealengine.com/en-US/ProgrammingAndScripting/ProgrammingWithCPP/Assertions/index.html https://docs.unrealengine.com/en-US/ProgrammingAndScripting/... Unit tests etc aren't that useful in games so no you won't find much of that stuff.