All Projects → kvakvs → Hge

kvakvs / Hge

Licence: other
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.

Projects that are alternatives of or similar to Hge

Blue Flame Engine
A 3D/2D game engine that supports both DirectX11 and OpenGL 4.5
Stars: ✭ 129 (-30.27%)
Mutual labels:  game-development, game-engine, 2d-game-engine, directx
Obengine
2D Game Engine with Lua Scripting made on top of SFML !
Stars: ✭ 335 (+81.08%)
Mutual labels:  cmake, game-development, game-engine, 2d-game-engine
Grid Sdk
The Grid SDK - Game engine for Lua
Stars: ✭ 612 (+230.81%)
Mutual labels:  game-development, game-engine, 2d-game-engine
Coffee
An opinionated 2D game engine for Rust
Stars: ✭ 771 (+316.76%)
Mutual labels:  game-development, game-engine, 2d-game-engine
Chronoshift
An open source re-implementation of Red Alert written in C++.
Stars: ✭ 144 (-22.16%)
Mutual labels:  cmake, game-development, game-engine
Astera
A C99 Cross Platform 2D Game Library
Stars: ✭ 193 (+4.32%)
Mutual labels:  cmake, game-development, game-engine
Glide
Game engine for making 2d games on iOS, macOS and tvOS, with practical examples and tutorials
Stars: ✭ 353 (+90.81%)
Mutual labels:  game-development, game-engine, 2d-game-engine
Novelrt
A cross-platform 2D game engine accompanied by a strong toolset for visual novels.
Stars: ✭ 81 (-56.22%)
Mutual labels:  game-development, game-engine, 2d-game-engine
Gdevelop
🎮 GDevelop is an open-source, cross-platform game engine designed to be used by everyone.
Stars: ✭ 3,221 (+1641.08%)
Mutual labels:  game-development, game-engine, 2d-game-engine
O2
2D Game Engine with visual WYSIWYG editor
Stars: ✭ 121 (-34.59%)
Mutual labels:  game-development, game-engine, 2d-game-engine
Gamedev Resources
🎮 🎲 A wonderful list of Game Development resources.
Stars: ✭ 2,054 (+1010.27%)
Mutual labels:  game-development, game-engine, 2d-game-engine
Openage
Free (as in freedom) open source clone of the Age of Empires II engine 🚀
Stars: ✭ 10,712 (+5690.27%)
Mutual labels:  cmake, game-development, game-engine
Methanekit
🎲 Modern 3D graphics made simple with cross-platform C++17 meta-API on top of DirectX 12 & Metal (Vulkan is coming)
Stars: ✭ 197 (+6.49%)
Mutual labels:  cmake, game-development, directx
Quadplay
The quadplay✜ fantasy console
Stars: ✭ 563 (+204.32%)
Mutual labels:  game-development, game-engine, 2d-game-engine
Octopuskit
2D ECS game engine in 100% Swift + SwiftUI for iOS, macOS, tvOS
Stars: ✭ 246 (+32.97%)
Mutual labels:  game-development, game-engine, 2d-game-engine
Pixelvision8
Pixel Vision 8's core philosophy is to teach retro game development with streamlined workflows. PV8 is also a platform that standardizes 8-bit fantasy console limitations built on top of the open-source C# game engine based on MonoGame.
Stars: ✭ 773 (+317.84%)
Mutual labels:  game-development, game-engine, 2d-game-engine
Xray 16
Improved version of the X-Ray Engine, the game engine used in the world-famous S.T.A.L.K.E.R. game series by GSC Game World. Join OpenXRay! ;)
Stars: ✭ 1,806 (+876.22%)
Mutual labels:  cmake, game-engine, directx
Imagineengine
A project to create a blazingly fast Swift game engine that is a joy to use 🚀
Stars: ✭ 1,751 (+846.49%)
Mutual labels:  game-development, game-engine, 2d-game-engine
Fxgl
Stars: ✭ 2,378 (+1185.41%)
Mutual labels:  game-development, game-engine, 2d-game-engine
Magnum Examples
Examples for the Magnum C++11/C++14 graphics engine
Stars: ✭ 180 (-2.7%)
Mutual labels:  cmake, game-engine

Change notes for 1.9

  • Multiple API calls changed some types from 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.
  • Multiple improvements to memory safety (strings and vectors where char * has a risk of overflow), modernising the source (smart pointers, etc), and type safety (replacing generic pointers and ints with structs and enums).

Support & Questions

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

ANNOUNCEMENT

DirectX8 support has ended. There will be no assistance with DirectX8 issues, DirectX8 code will be gradually removed. Please use DirectX9.

INSTALLING

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).

  1. Edit CMakeLists.txt in root folder, set "DIRECTX_SDK_DIR" to where you have DirectX 9 SDK (see that it comes from microsoft.com, tagged year ~2010, size ~550 MB).
  2. Run cmake_studioNNNN.bat (NOTE: you can create own bat file if CMake supports your IDE).
  3. Project directory will be created in _build, open project file (.SLN solution file) with your IDE and click "BUILD" in your IDE.
  4. Resulting library 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.
  5. All temporary build files will stay inside _build/. To clean intermediate files one should delete linklib, bin and _build

IMPORTANT

  1. If you got a 64bit project by mistake, add "-A Win32" to CMake command line. See example in cmake_studio2019.bat
  2. If you are going to change any build options, please keep in mind, that this is CMake generated project, editing anything inside _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).
  3. if you link against HGE library, you only need to mention HGE.LIB in project settings, and have HGE.DLL in your program folder. HGEHELPERS is not needed (its linked internally).
  4. if you link against HGE-STATIC flavour of library, you don't need 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.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].