An open-source Tomb Raider 1 engine remake
If you don't find an answer for your issue, please open an issue or discussion on GitHub, or join the Discord. No matter where you post your issue, it will be handled.
An open-source Tomb Raider 1 engine remake.
CroftEngine is an open-source engine distributed under LGPLv3 license, which means that ANY part of the source code must be open-source as well.
Avoid installing in the same folder as the original game. Otherwise, weird stuff may happen. CroftEngine pull in the data it needs from your original game data location. After you can confirm CroftEngine works, it is safe to delete the original Tomb Raider installation, as CroftEngine doesn't need that anymore to run.
A user manual has been kindly provided by Raina Audron here.
Please note that as of Beta 15 a setup assistant is included that should start if anything is missing.
%LOCALAPPDATA%
and create a directory croftengine
there; on Linux, navigate
to ~/.local/share
and create a directory croftengine
there.croftengine
└ data
└ tr1
├ AUDIO
│ ├ 002.ogg
│ ├ 003.ogg
│ └ ...
├ DATA
│ ├ CUT1.PHD
│ ├ CUT2.PHD
│ └ ...
└ FMV
├ CAFE.RPL
├ CANYON.RPL
└ ...
Additionally to the standard cheats (step forward, step backwards, rotate slightly more than 1.5 rotations, and jump forward/backward), there are two additional cheats.
Reference
Anisotropy disabled - look at the snow on the wall to the right
Bilinear filtering - blurs the textures
Bloom - bright areas will slightly spread their light to neighboring areas
Brightness
Contrast
CRT Version 1
CRT Version 2
Dust Particles disabled - the reference has Dust Particles enabled, this is how it looks when it's turned off
Partial Dynamic Lighting
Mostly Dynamic Lighting
Full Dynamic Lighting
Edge Outlining
Film Grain - barely visible in-game
FXAA disabled - anti-aliasing, this is how it looks when disabled
HBAO disabled - darkens corners, look at the snow where the floor hits a wall, this is how it looks when disabled
Lens Distortion
Muzzle Flash Lighting
Render Scale half and UI Scale - half render scale, UI Scale is the same, but only affects the UI
Shadow Quality disabled - improves performance when disabled, but reduces the visual quality
Velvia - increases color saturation
Depth of Field - slightly blurs everything outside the focus point, which is at the center of the screen
The following people deserve some noteworthy credit.
The following people did extensive work on the OpenTomb engine, which was the starting point for CroftEngine. Although CroftEngine is a complete re-write with negligible remnants of OpenTomb's code base and pretty much different goals, you can see the commit history of OpenTomb in this repository. Because of that - and because I want to be grateful - I'd like to give credit to the OpenTomb contributors.
Additional contributions from: Ado Croft (extensive testing), E. Popov (TRN caustics shader port), godmodder (general help), jack9267 (vt loader optimization), meta2tr (testing and bugtracking), shabtronic (renderer fix-ups), Tonttu ( console patch) and xythobuz (additional Mac patches).
Translations by: Joey79100 (French), Nickotte (Italian), Lwmte (Russian), SuiKaze Raider (Spanish).
Do a git submodule update --init --recursive
.
CroftEngine uses vcpkg on Windows; refer to its documentation for basic usage,
but the only
thing you need is to call cmake with
-DCMAKE_TOOLCHAIN_FILE=C:/devel/vcpkg/scripts/buildsystems/vcpkg.cmake
(adjust path as necessary).
This is the list of the required libraries to be installed with vcpkg install
(remember to set the target triplet as
necessary, e.g. vcpkg install boost:x64-windows
):
...or use this, and adjust the triplet:
vcpkg install --triplet x64-windows boost glfw3 libpng openal-soft opengl freetype ffmpeg utfcpp gettext[tools] libarchive libjpeg-turbo
An installation of Qt 5 is also necessary; as manually downloading and installing this
package is usually faster than letting it build through vcpkg, it is not included in the above list. If you don't want
to register for a Qt online account, you have to build it yourself, though, by installing the qt5
and
qt5-translations
vcpkg packages.
Finally, you need a Python 3 installation; the one provided by vcpkg does not work. The
minimum supported version is Python 3.6, the Windows releases ship with Python 3.8. Other versions are not tested. To
build CroftEngine on Windows with an external Python installation, you need to add the variable Python3_ROOT
pointing
to the installation root, e.g. using the command line with -DPython3_ROOT=E:\Python38
or adding a path variable in the
ui.
Do a git submodule update --init --recursive
.
CroftEngine will download and cache some 3rd party libraries which are uncommon or usually outdated on today's popular Linux distributions.
This is the list of the required libraries to be installed (these are not package names, but should be similar):
You can have a look at the openSUSE RPM spec for RPM-based packages or the CI file for Debian-based packages. Depending on your distribution, the package names may differ.
Then follow the common cmake
steps to build, i.e. mkdir build && cd build && cmake .. && make
.
Warning! The Glad bindings have been manually patched to always try to load
the GL_ARB_bindless_texture
extension, regardless of whether GL_EXTENSIONS
reports it or not. This is to allow
debugging with RenderDoc.
See src/soglb/glad-patches.md for the applied patches.
Use the following settings to generate the bindings: