Autor | Frictional Games |
---|---|
Platforma sprzętowa | Microsoft Windows, OS X, Linux |
Rodzaj | silnik gry |
Licencja | zamknięte oprogramowanie/GNU General Public License |
Strona internetowa |
HPL Engine – silnik gry wyświetlający grafikę trójwymiarową stworzony przez Frictional Games. Silnik, którego nazwa powstała z inicjałów pisarza powieści grozy Howarda Phillipsa Lovecrafta, stworzono w 2004 roku dla dwuwymiarowej gry platformowej Energetic opublikowanej w 2005 roku[1][2]. Obsługa grafiki trójwymiarowej została dodana później i zaprezentowano ją w 2006 roku w demie technologicznym Penumbra Tech Demo[3]. W 2010 roku po zakończeniu akcji Humble Indie Bundle 1 pierwsza wersja silnika (HPL1) wraz z grą Penumbra: Przebudzenie zostały opublikowane jako otwarte oprogramowanie na licencji GPL 3[1].
HPL to wieloplatformowy silnik gry kompatybilny z bibliotekami OpenGL, OpenAL i Newton Game Dynamics[4]. Jedną z charakterystycznych funkcji silnika jest możliwość zaawansowanej interakcji pomiędzy obiektami za pomocą kodu fizycznego Newton Game Dynamics[5].
Pierwszą wersję silnika HPL zademonstrowano w demie technologicznym Penumbra Tech Demo. Według twórców powstał na podstawnie dwuwymiarowego silnika użytego w grze platformowej Energetic. Do silnika dodano możliwość wyświetlania grafiki 3D, jednak może on być nadal użyty w celu renderowania grafiki 2D[3]. Silnik pozwala też na używania zarówno statycznych, jak i dynamicznych cieni, dzięki czemu osoby ze słabszymi komputerami mogą doświadczyć efektów cieniowania bez konieczności renderowania ich dynamicznie[6].
Gra Penumbra: Przebudzenie była częścią pakietu Humble Indie Bundle, a gdy osiągnął on ponad milion dolarów przychodu, Przebudzenie zostało opublikowane na licencji GNU General Public License. Wraz z grą opublikowano także silnik i narzędzie programistyczne[7].
Tej wersji silnika HPL używają następujące gry:
Wersja HPL 2 posiadała wiele nowych funkcji i ulepszeń. W HPL 1 użyto systemu usuwania niewidocznych powierzchni (proces określający, które obiekty nie powinny być renderowane w celu zwiększenia wydajności), a HPL 2 używa dynamicznej techniki usuwania zwaną Coherent Hierarchical Culling. HPL 1 używa techniki Carmack's Reverse przy cieniowaniu, a HPL 2 korzysta z mapowania cieni. Silnik wyposażono też w nowe efekty, takie jak Screen Space Ambient Occlusion, proper decals i nową technikę renderowania o nazwie deferred shading. Powoduje to, że HPL 2 ma większe wymaganie sprzętowe, niż poprzednik[8].
Tej wersji silnika HPL używają następujące gry:
Wersja HPL 3 została użyta w najnowszej grze studia Soma. Nowościami są m.in.: