https://github.com/losinggeneration/hge
A hybrid wrapper/port of Haaf's Game Engine (HGE). Specifically this is for hge-unix from the c_api git branch.
https://github.com/losinggeneration/hge
2d-game-engine game-engine go golang haaf-game-engine hge hge-unix port wrapper
Last synced: about 1 year ago
JSON representation
A hybrid wrapper/port of Haaf's Game Engine (HGE). Specifically this is for hge-unix from the c_api git branch.
- Host: GitHub
- URL: https://github.com/losinggeneration/hge
- Owner: losinggeneration
- License: bsd-2-clause
- Created: 2012-08-15T18:09:14.000Z (almost 14 years ago)
- Default Branch: master
- Last Pushed: 2023-10-05T19:26:44.000Z (over 2 years ago)
- Last Synced: 2025-04-15T01:54:05.805Z (about 1 year ago)
- Topics: 2d-game-engine, game-engine, go, golang, haaf-game-engine, hge, hge-unix, port, wrapper
- Language: Go
- Size: 773 KB
- Stars: 5
- Watchers: 2
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# WARNING
This API still needs input. There may still be breakage. A stable legacy API is provided for those wanting to use the C like API.
# Haaf's Game Engine (HGE) in Go!
======================
This is a binding and port of HGE (currently the hge-unix version) to Go. It currently provides a binding to the main C++ HGE class via C binding of hge-unix. The helper classes available in C++ are then ported to Go using just the core binding. Rather than binding everything through the C interface (or through SWIG), there's a fairly sizable chunk of ported/reimplemented code from C++ to Go. In the future, there may be direct bindings to the C interface, but that will be separate from the Go implementation, and functionally, should be identical.
## Requirements:
* Currently, hge-unix is all that's supported. In addition, the c_api branch must be compiled and built with -DBUILD_C_API=ON from https://github.com/losinggeneration/hge-unix/
** As a note, if it's installed to /usr/local you may need to put /usr/local/lib/pkgconfig in your PKG_CONFIG_PATH shell variable.
* You'll need a working Go 1 compiler with cgo. (I've only tested with gc Go.)
* Likely UNIX as I'm unsure if hge-unix compiles & works with Windows.
## Building:
* All you need to do is run: go build
* If you're wanting to use go get, you can do so with: go get github.com/losinggeneration/hge
* Additionally, you can: import "github.com/losinggeneration/hge" and it should work as expected.