Developer Frictional Games have just released the source code for their games Amnesia the Dark Descent and Amnesia A Machine for Pigs to celebrate the 10th anniversary of the initial games release. The source code is C++ based and runs on Windows, Mac and Linux and has been released under the GPLv3 license. This is a source only release, so you will still need the game for the level binaries to play it.
Keep features of the game from the developers website (this is currently struggling under load):
- Shadow mapping with soft edges.
- Realtime visibility culling system that also works for dynamic objects.
- Automatic render batch system of static objects.
- Deferred shading system.
- A full editor with lots of interesting feature that such as picking algorithms and view fitting.
- Very simple state machine AI that still gives rise to fairly interesting and intelligent agents.
- Fairly advanced system for physics sounds.
- Physics based interaction system.
- Own sound system implemented using OpenAL
- Lots of other basic rendering and gameplay tech all implemented in an a coherent engine structure
The source code for both games is available on GitHub, with The Dark Descent available here, while Machine for Pigs is available here. The HPL engine that both games depend on is available here with the v2 source code in the MfP repository here. You can learn more about the release and a quick look at how the code is structured in the video below (or watch it here on Odysee).