HGE 1.9 configured with CMake DirectX9 version, with shaders. The classic 1.8.1. version is in the `master` branch if you ever need that.
char*
to const char*
, also blending mode is now using
hgeBlendMode
enum - use type cast like so:
spt->SetBlendMode((hgeBlendMode)(BLEND_COLORMUL | BLEND_ALPHAADD | BLEND_NOZWRITE));
uint32_t
color argument in many functions and classes is now a simple wrapper class hgeColor32
.
To give default clear/draw color, you can use hgeColor32::WHITE()
and BLACK()
constexpr functions
or create your colors.char *
has a risk of overflow),
modernising the source (smart pointers, etc), and type safety (replacing generic pointers and ints with
structs and enums).Documentation and more info http://kvakvs.github.io/hge
Example game can be found here https://github.com/kvakvs/hge_skel
For those times when you absolutely need help, there is the Discord channel: https://discord.gg/TdjamHt
DirectX8 support has ended. There will be no assistance with DirectX8 issues, DirectX8 code will be gradually removed. Please use DirectX9.
This package is configured with CMakeLists.txt for use with CMake. Once ran, CMake generates project files for one of known IDE's for Windows (as well as Linux/Unix/MacOSX but this version of HGE only builds on Windows).
cmake_studioNNNN.bat
(NOTE: you can create own bat file if CMake supports your IDE)._build
, open project file (.SLN solution file)
with your IDE and click "BUILD" in your IDE.HGE.DLL
and HGE.LIB will be placed in bin
directory, all
intermediate libraries will be placed in /linklib
. There is also HGE-STATIC
library which doesn't require DLL to run, it can be found in linklib
._build/
. To clean intermediate files one
should delete linklib
, bin
and _build
cmake_studio2019.bat
_build
folder will be overwritten
next time, when you compile HGE project. If you need to add any compiler options, please
edit main or each CMakeLists.txt
in HGE181 and src/*
folders (depending how big
your changes are).HGE.DLL
in your program folder. HGEHELPERS is not needed (its linked internally).HGE.DLL
anymore, all
functionality will be included in your application. You need to mention HGEHELPERS, ZLIB
and HGELIBPNG in linker settings of your project for this to work (as well as D3D8.lib
D3DX8.lib or 9 if you are using DirectX9 and WINMM.lib). Consult project settings of
'hge' project regarding Linker input.