㈠
根据 HGE 环境设置 创建一个新的工程
教程源代码下载地址:点击打开链接
教程图片
下面代码是一个HGE的游戏框架.
大多数的代码都是在此基础上完成的.
代码都有注释,比较好理解.注释比较通俗,不太专业,希望多理解点,注释如有错误请理解
代码如下:
/*
** 【HGE 教程01】Hello World
**
**
*/
#include "hge.h"// 包含hge头文件
#include "hgefont.h"// 包含hgefont头文件
HGE *hge = 0;//创建一个指向hge类的指针。
hgeFont* fnt;//定义字体指针,
bool FrameFunc()//逻辑函数,此函数每一帧都会被调用一次,把你的游戏循环的代码在这里。
{
//检测"ESC"键是否被按下,如果返回 "true" 则停止运行程序.
if (hge->Input_GetKeyState(HGEK_ESCAPE)) return true;
return false;//程序正常时总是返回false,当你希望程序终止时返回true
}
bool RenderFunc()// 绘制函数,将你的渲染代码放在这里。
{
//开始渲染图像
hge->Gfx_BeginScene();
//设置字体颜色
fnt->SetColor(0xFF00FFFF);
//渲染格式化的文本字符串(屏幕X坐标,屏幕Y坐标,排列分类符,文本字符串)
fnt->printf(260, 100, HGETEXT_LEFT, "H e l l o W o r l d !");
//结束渲染图像
hge->Gfx_EndScene();
//当你希望程序终止时返回true,//返回true将从 System_Start往下执行
//否则返回false。
return false;
}
int WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)//WinMain 函数,程序的入口。
{
hge = hgeCreate(HGE_VERSION);//创建HGE接口,参数必须为HGE_VERSION
hge->System_SetState(HGE_FRAMEFUNC, FrameFunc);//设置逻辑函数为FrameFunc函数
hge->System_SetState(HGE_RENDERFUNC,RenderFunc);//设置绘制函数为RenderFunc函数
hge->System_SetState(HGE_TITLE, "Hello World!");// 设置窗口标题
hge->System_SetState(HGE_SCREENWIDTH, 800);//程序窗口宽度
hge->System_SetState(HGE_SCREENHEIGHT, 600);//程序窗口高度
hge->System_SetState(HGE_WINDOWED, true);//是否是窗口模式,默认是 800x600
hge->System_SetState(HGE_USESOUND, false);//使用声音资源
hge->System_SetState(HGE_SHOWSPLASH, false);//去掉HGE开始的LOGO
hge->System_SetState(HGE_HIDEMOUSE,false); //设置鼠标
if(hge->System_Initiate())//初始化引擎所需的所有软硬件并创建程序窗口。
{
fnt = new hgeFont("font1.fnt");
hge->System_Start();//运行FrameFunc().函数. 如果成功则返回true。否则返回false
}
else
{
// 如果下初始化失败显示错误消息
MessageBox(NULL, hge->System_GetErrorMessage(), "Error", MB_OK | MB_ICONERROR | MB_APPLMODAL);
}
hge->System_Shutdown(); //复原视频模式,释放所有已分配的资源,并销毁程序窗口。
//删除资源
hge->Release();//释放HGE接口并在必要时删除HGE对象。
return 0;
}