HPL Game Engine

Amnesia: Justine - Game

HPL is a cross-platform, open-source, in-House game engine written in C++. It also uses script language Angel Script that is similar to C/C++ language. It develops games for the platforms of Linux, Microsoft Windows and Mac OS and released by Frictional Games.

As the engine was developed for the horror games, its features are specified for the genre such as Bump Mapping, Normal Mapping and dynamic stencil shadows.

HPL was named after an American horror-fiction author, Howard Phillips Lovecraft. HPL was created in December 1994. This was developed for a university thesis and was developed as 2D engine. The first game developed using this engine was Energetic in 2005. Afterwards, it was upgraded to 3D engine. But the engine can still be used for 2D game development. Three versions of the engine have been released so far.

HPL Engine 1

 Its first version HPL Engine 1 was mainly employed in Penumbra Series (link given at the end of article). Penumbra was a First Person, story based immersive Horror game. On May 2010, it was released as open source and was made licensed under GPL version-3 license. In 2010, Penumbra: Overture was included in Humble Indie Bundle (a platform that sells the games and donates a portion of profits to charity and rest goes to the developers). When it reached the milestone of 1 million dollars, the source code and modding tools of the game were made free under GNU license. On May 2010, the source code of the engine was made public.

HPL1 provides step by step guide to develop game via its tutorial page. These tutorials help creating maps, models and many more.

Frictional Games Wiki


  • Newton Game Dynamics.
  • Unique Physics Engine.
  • Cutting Edge Technology.
  • True Environment Interactions.
  • Immersive Environment.
  • Motion Blur and Bloom.
  • Inventory Management System.
  • Bump Mapping
  • Normal Mapping
  • Dynamic Stencil Shadows.

Games Developed in HPL Engine1

Homepage – Buy on Amazon
Homepage – Buy on Amazon
Homepage – Buy on Amazon

HPL Engine 2

HPL2 is the second version of HPL Engine series that specializes for horror games. It is a cross-platform, open-source, 3D game engine written in C++.  This engine is the advanced version of HPL engine with several technical upgrades. Besides, Windows, Linux and Mac OS, it developed games for Mac OS X. this engine was mainly used to create Amnesia Series, developed by The Chinese Room Company.

The first game of the series, Amnesia: A Machine for Pig was to be released in September, 2013 but was postponed due to the massive expectations from the public. Also the delay was the result of the fact that the actual game exceeded in size from the experimental version.

HPL1 lack Modding Tools and in-depth documentation due to time constraint and personnel unavailability. But HPL2 came with a variety of modding tools and documentation. Each tool was well-described on how to be used in the Wiki page. HPL1 incorporated portal system for occlusion culling (the process of disabling objects rendering if the object is occluded behind other objects and not visible to camera) but in HPL2 the task is done through more efficient Coherent Hierarchical Occlusion and support for SSAO (Screen Space Ambient Occlusion). Other enhancements include Shadow maps that allowed more realistic environmental light and shadows.

HPL1 provides step by step guide to develop game via its tutorial page. These tutorials help creating maps, models and many more.

Frictional Games Wiki


  • Material Editor
  • Level Editor
  • Particle Editor
  • 3D Model Editor
  • Model and Map viewer
  • Shadow Maps
  • Environmental Light
  • Coherent Hierarchical Culling
  • SSAO (Screen Space Ambient Occlusion)

Games Developed in HPL Engine 2

Amnesia: The Dark Descent
Amnesia: Justime

HPL Engine 3

HPL3 is the most recent version of HPL Engine series that specializes for horror games. It is a cross-platform, open-source, 3D game engine written in C++.  It came with a number of technical upgrades. It is the first engine to Support both PC and Console. The Engine targets the platform of Windows, Mac OS X, Xbox One, Linux and PS4. Last version on HPL3 came in 2015. To provide same visuals to all platforms and for fast development, a dedicated shadow language HPSL was developed for HPL3.

It was develop along the development of the SOMA game. The game had been in development since 2010 and released on September 2015. Soma is a Greek word meaning body as distinct from the soul or mind. The second game of the engine is amnesia: Rebirth. Its announcement trailer was released in March 2020.

 This engine is also made open source as described by the founder of HPL:

“We talked about the release of engine code and games for Open Source for quite some time. With the success of the Humble Indie Bundle, a great opportunity came up, and we decided to join other games in the open source. Although the code for the game and the engine has been developed for several years, even today it is not actively used. Basically, it just rots in the dark corners of our hard drives. The engine will feel much better in an open area, where it has the ability to grow and do something good. I hope that it will be useful, and I am very happy to see what people can do with it!”

– Thomas Grip, studio programmer and founder


  • Global Sunlight and real-time Shadows.
  • Fully lit Out Door Scenes.
  • In- Engine Terrain Generation.
  • Introduction of HPSL language.
  • Open Space Support.
  • Dynamic Terrain LODs (Level Of Details) for distant Scenes.
  • Sophisticated Character AI.
  • Anti-Aliasing.
  • DOP (Depth Of Field).
  • Streaming (No loading Screens between levels)
  • Colored Specular.
  • Particle Collision.
  • Tessellation.

Games Developed in HPL Engine 3

Amnesia Rebirth

Some Useful Resources

Categories: Blog
M. Saqib: Saqib is Master-level Senior Software Engineer with over 14 years of experience in designing and developing large-scale software and web applications. He has more than eight years experience of leading software development teams. Saqib provides consultancy to develop software systems and web services for Fortune 500 companies. He has hands-on experience in C/C++ Java, JavaScript, PHP and .NET Technologies. Saqib owns and write contents on since 2004.
Related Post