Ask HN: Is TDD or BDD used in AAA gaming industry?
41–50 of 64 posts
Re: Ask HN: Is TDD or BDD used in AAA gaming industry?
#42Croteam applied lots of automated testing by bots in The Talos Principle to ensure that changes in level design cannot lead to a situation where the game cannot be completed anymore: > https://venturebeat.com/2014/11/04/the-talos-principle-under... > http://www.gdcvault.com/play/1022784/Fast-Iteration-Tools-in...
Unless the AI also knows to check each possible interaction, movement, etc.
Re: Ask HN: Is TDD or BDD used in AAA gaming industry?
#43Factorio is a good example of a test driven developed game: https://www.factorio.com/blog/post/fff-186
factorio doesn't really qualify as coming from AAA gaming industry. and factorio devs are on another level.
Re: Ask HN: Is TDD or BDD used in AAA gaming industry?
#44Earlier quoted context omitted.
Because games are cool and there is no shortage of good developers. All games are throwaway projects. Write one, sell for a year, gone. There is no maintenance period.
Not true for MMOs and F2P games, these often run for many years some with biweekly or monthly content updates.
Content updates don't need programmers.
Re: Ask HN: Is TDD or BDD used in AAA gaming industry?
#45I work on a game called Path of Exile. At our studio we don't do TDD, but we do continuous integration with a lot of asset testing. In the early days, we tried doing unit tests, but honestly, it's very hard in a game. We had little success testing gameplay code. What we have a huge amount of is asset tests. We have 4 times more non-programmers than programmers working on the game, so most of what is created isn't cod…
Re: Ask HN: Is TDD or BDD used in AAA gaming industry?
#46I'm not in the game industry, but from what little I know, this is probably going to be a tricky question to answer. Reason being, a high proportion of AAA game development is done using off-the-shelf game engines. Of course it's still necessary to write code for the game logic and features, but because of the stable base this code is written against, it might not be seen as necessary to follow a strict TDD/BDD appro…
> a high proportion of AAA game development is done using off-the-shelf game engines. I don't think this is particularly true. A high proportion of game development is, but many AAA studios are using either home-rolled engines, or started with an existing engine (Unreal or iDTech) and what they're currently running looks absolutely nothing like the original engine.
The problem is, most of the major game dev companies have their own engines. Unreal Engine is massive in AAA games, but most EA titles use Frostbite, Valve: Source, Ubisoft: Anvil, Crytek: CryEngine, Bethesda: Gamebryo, and the CoD devs use IW, which is a fork of id tech engine.
However, this doesn't mean that they aren't using off-the-shelf engines. As long as you count in-house "shelves".
Re: Ask HN: Is TDD or BDD used in AAA gaming industry?
#47In my experience, no, they don't write tests first, and in fact AAA game companies write almost no automated tests at all. Instead, AAA teams have large staffs of cheap manual testers--high school and college kids who think they're getting paid to play video games. The managers in charge of these QA teams work their manual testers to the bone, encouraging them to work late and do unpaid overtime. These testers inevit…
This is my impression too. There's also good reasoning: TDD is poorly suited to the industry. For example, how would you test your renderer? Do you run the pipeline and check it against a final image? No, strict TDD would require that the asserted image be hand-crafted. Do you check that each part of the pipeline works as a unit? You can't without running shaders on the GPU (requiring the previous image test). What g…
Oh, that's easy.
npm install --save-dev mock-openglRe: Ask HN: Is TDD or BDD used in AAA gaming industry?
#48Earlier quoted context omitted.
This is my impression too. There's also good reasoning: TDD is poorly suited to the industry. For example, how would you test your renderer? Do you run the pipeline and check it against a final image? No, strict TDD would require that the asserted image be hand-crafted. Do you check that each part of the pipeline works as a unit? You can't without running shaders on the GPU (requiring the previous image test). What g…
> For example, how would you test your renderer? Oh, that's easy. npm install --save-dev mock-opengl
Re: Ask HN: Is TDD or BDD used in AAA gaming industry?
#49Croteam applied lots of automated testing by bots in The Talos Principle to ensure that changes in level design cannot lead to a situation where the game cannot be completed anymore: > https://venturebeat.com/2014/11/04/the-talos-principle-under... > http://www.gdcvault.com/play/1022784/Fast-Iteration-Tools-in...
That's not TDD, really, but it's a clever way of testing both the AI, and level changes, to a certain extent. If you drop a fucking boulder and you can't cross it yeah, it will light you up with red floodlights, but if a certain corner drops you into the nether... Unless the AI also knows to check each possible interaction, movement, etc.
Re: Ask HN: Is TDD or BDD used in AAA gaming industry?
#50Their automated testing was mostly bruteforce stuff like,
* Placing a character at penalty spot and making it shoot with every possible angle and strength, making sure the ball didn't launch to space.
* They would leave a computer vs. computer game running for hours / days to make sure no kind of random crash would happen.