這次我們會學習使用
hge的一些幫助類。首先,包含所有需要的標頭檔案並宣告
hge全域性指標,大多數幫助類都需要它。
#include
#include
#include
#include
hge *hge=0;
現在宣告
hge物件。
hgesprite*spr;
hgesprite*spt;
hgefont*fnt;
hgeparticlesystem*par;
htexturetex;
在framefunc中我們更新粒子系統物件:我們基於精靈速度調整噴射速率並移動它到當前精靈位置。
par->info.nemission=(int)(dx*dx+dy*dy)*2;
par->moveto(x,y);
par->update(dt);
在renderfunc中我們渲染所有的物件,呼叫它們的渲染方法。
hge->gfx_beginscene();
hge->gfx_clear(0);
par->render();
spr->render(x, y);
fnt->printf(5, 5, hgetext_left, "dt:%.3f/nfps:%d",
hge->timer_getdelta(), hge->timer_getfps());
hge->gfx_endscene();
在winmain函式中
hge初始化後建立
hge物件。首先設定精靈:
spr=new hgesprite(tex, 96, 64, 32, 32);
spr->setcolor(0xffffa000);
spr->sethotspot(16, 16);
接著載入字型。字型用兩個檔案描述
font1.fnt
和font1.png。
fnt=new hgefont("font1.fnt");
建立粒子系統和精靈。
spt=new hgesprite(tex, 32, 32, 32, 32);
spt->setblendmode(
blend_colormul | blend_alphaadd | blend_nozwrite);
spt->sethotspot(16, 16);
par=new hgeparticlesystem("trail.psi", spt);
par->fire();
現在所有物件建立完畢開始遊戲迴圈。
hge->system_start();
遊戲迴圈結束我們刪除所有的
hge物件。
delete par;
delete fnt;
delete spt;
delete spr;
這個程式的結束值和先前的示例是一樣的。
HGE教程翻譯(4)
渲染紋理 首先我們宣告渲染物件的控制代碼和配合使用的精靈。hgesprite tar htarget target gfxrestorefunc 函式。bool gfxrestorefunc 在renderfunc中我們首先渲染所有的素材到紋理,在 gfx beginscene 中詳細指定渲染物件。...
HGE教程翻譯(5)
使用曲面變換 在這個教程中我們學習如何使用曲面變形,一種可以建立水面 透鏡 紙張甚至實時的變化。我們使用靜態的紋理,但你可以渲染你的整個遊戲場景到乙個紋理,通過扭曲網格來達到一些很酷的實時特效。首先包含標頭檔案和變數的宣告。include include include hge hge 0 htex...
HGE教程翻譯(7)
成千上萬的野兔 這篇教程示範hge渲染多種混合模式。建立精靈 我們跳過所有的技術細節直接來到動作。首先建立並初始化一對精靈,用於 game objects 和背景。注意背景精靈是如何從小的 64x64 圖塊建立並在底部上色。htexture tex,bgtex hgesprite spr,bgspr...