hge 的一些笔记

hge指针
HGE *hge=0;//创建一个指向hge类的指针。

绘制函数
bool RenderFunc()//绘制函数,程序开始后HGE将不停调用它 
{
	hge->Gfx_BeginScene();//开始画面 
	hge->Gfx_Clear(0);//给背景涂色0 
	hge->Gfx_EndScene();//结束 
	return false;//程序正常时总是返回false,返回true将从System_Start往下执行 
}

逻辑函数
bool FrameFunc()//逻辑函数,程序开始后HGE将不停调用它,一些逻辑判断或者处理可以写在这里。
{
	return false;//总是返回false 
}

程序入口
int WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)//WinMain函数,程序的入口。
{
	hge=hgeCreate(HGE_VERSION);//使用hgeCreate函数创建HGE接口,参数必须传递正确的HGE_VERSION,它是在hge.h中定义的
	hge->System_SetState(HGE_SHOWSPLASH,false);//取消欢迎动画 
	hge->System_SetState(HGE_SCREENWIDTH, 800);//将屏幕宽度设置为800 
	hge->System_SetState(HGE_SCREENHEIGHT,600);//将屏幕高度设置为600 
	hge->System_SetState(HGE_SCREENBPP, 32);//
	hge->System_SetState(HGE_LOGFILE, "hge_tut02.log");//设置日志文件
	hge->System_SetState(HGE_FRAMEFUNC, FrameFunc);//设置逻辑函数为FrameFunc函数 
	hge->System_SetState(HGE_RENDERFUNC,RenderFunc);//设置绘制函数为RenderFunc函数
	hge->System_SetState(HGE_TITLE, "我的第一个HGE程序");//设置窗口标题为“我的第一个HGE程序” 
	hge->System_SetState(HGE_WINDOWED,true);//设置使用窗口模式
	hge->System_SetState(HGE_USESOUND,false);//设置不使用声音
	hge->System_SetState(HGE_HIDEMOUSE, false);//是否隐藏鼠标
	
	if(hge->System_Initiate())//用hge类的System_Initiate()方法,检测初始化是否有错误出现
	{
		// Load sound and texture
		snd=hge->Effect_Load("menu.wav");//加载声音文件 
		quad.tex=hge->Texture_Load("particles.png");//加载图片 
		if(!snd || !quad.tex)//判断是否加载成功,若失败执行
		{
			MessageBoxA(NULL, "Can't load MENU.WAV or PARTICLES.PNG", "Error", MB_OK | MB_ICONERROR | MB_APPLMODAL);//弹出错误信息 
			hge->System_Shutdown();//程序停止
			hge->Release();//释放HGE所占用的内存。
			return 0;
		}
		hge->System_Start();//开始 
		
		hge->Texture_Free(quad.tex);//释放 
		hge->Effect_Free(snd);//释放 
	}
	
	hge->System_Shutdown;//程序停止 
	hge->Release();//释放HGE所占用的内存 
	return 0;
}


精灵
HTEXTURE tex;//定义一个texture(纹理)对象 
hgeSprite *spr;//创建精灵类指针
spr->Render(显示位置X,显示位置Y);//在指定位置显示精灵
tex=hge->Texture_Load("图片路径和后缀,这里是相对目录,vc++2005是debug目录");//根据路径载入图片
if(tex)//检测是否图片成功载入
spr=new hgeSprite(tex,图片的显示起始位置X,起始位置Y,图片宽,图片高);//初始化精灵spr,并且指定tex为它的纹理
hge->Texture_Free(tex);//释放纹理
delete spr;//释放精灵 

声音播放
HEFFECT:用来保存载入的声音的
Effect_Load函数:这是一个有返回值的函数,返回的值便是一个HEFFECT数据,于是,我们可以写:snd=Effect_Load("Source/music.mp3")
Effect_Free函数:释放
Effect_Play函数:这个函数的返回值是一个陌生数据类型,这个数据类型叫做HCHANNEL,暂停,播放,继续,停止
if(hge->Input_GetKeyState(HGEK_A))//检测是否按下了A键
hge->Effect_Play(snd);//如果按下了A键,则播放音乐snd 


其他
SetColor(ARGB(alpha,r,g,b));//颜色设置 
SetHotSpot函数://不仅仅决定了显示坐标相对于图像的位置,同时也决定了旋转时的中心
hge->System_GetErrorMessage()//截获错误

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值