A just-for-fun journey on reimplementing Command & Conquer: Generals (Zero Hour).
- Tech features
- high display resolution
- better FPS
- platform portability
- SP campaign
- SP skirmish
- better SP AI
Low priority:
- Multiplayer
- Match recording/replay
- UI feature-completeness
The source code is subject to GPLv2 unless specified otherwise. Please consult the LICENSE file.
- CMake
- C++20 compiler, lld (r/n)
- FreeType2
- OpenAL
- SDL3
- Vulkan
- libAV: libavcodec, libavformat, libavutil, libswresample
- glslc
Other requirements (GLM, libfmt, tracy) are pulled by CMake, or are optional (GoogleTest).
Windows/MSYS2 and Linux are generally expected to work.
-DUSE_TESTS=1: also build tests-DUSE_GAME_TESTS=1: also build game tests (requires game assets to be available)-DUSE_TRACY=1: also include tracy annotations
After building the project, start zhen(.exe).
NOTE: Modify game/Config.h to adjust the path to your English ZH directory.
BIG: inspecting and extracting items from.bigfiles.decompress: decompressing asset filesmapdump: printing of MAP file informationobjview: stand-alone rendering of objectsw3ddump: printing of W3D model informationw3dview: stand-alone rendering of model files
