用c++ 来实现hge游戏
#include "..\..\include\hge.h"
HGE *hge = 0;
// This function will be called by HGE once per frame.
// Put your game loop code here. In this example we
// just check whether ESC key has been pressed.
bool FrameFunc()
{
// By returning "true" we tell HGE
// to stop running the application.
if (hge->Input_GetKeyState(HGEK_ESCAPE)) return true;
// Continue execution
return false;
}
int WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
{
// Here we use global pointer to HGE interface.
// Instead you may use hgeCreate() every
// time you need access to HGE. Just be sure to
// have a corresponding hge->Release()
// for each call to hgeCreate()
hge = hgeCreate(HGE_VERSION);
// Set our frame function
hge->System_SetState(HGE_FRAMEFUNC, FrameFunc);
// Set the window title
hge->System_SetState(HGE_TITLE, "HGE Tutorial 01 - Minimal HGE application");
// Run in windowed mode
// Default window size is 800x600
hge->System_SetState(HGE_WINDOWED, true);
// Don't use BASS for sound
hge->System_SetState(HGE_USESOUND, false);
// Tries to initiate HGE with the states set.
// If something goes wrong, "false" is returned
// and more specific description of what have
// happened can be read with System_GetErrorMessage().
if(hge->System_Initiate())
{
// Starts running FrameFunc().
// Note that the execution "stops" here
// until "true" is returned from FrameFunc().
hge->System_Start();
}
else
{
// If HGE initialization failed show error message
MessageBox(NULL, hge->System_GetErrorMessage(), "Error", MB_OK | MB_ICONERROR | MB_APPLMODAL);
}
// Now ESC has been pressed or the user
// has closed the window by other means.
// Restore video mode and free
// all allocated resources
hge->System_Shutdown();
// Release the HGE interface.
// If there are no more references,
// the HGE object will be deleted.
hge->Release();
return 0;
}