hge引擎
2D游戏引擎,HGE的一个简单教程
1. 接口函数 ( Interface functions ) : hgeCreate --- 初始化 HGE 指针 , 这是一个全局函数 , 除了这个函数 , HGE Cor e Funtions 中所有的函数都需要通过 HGE 指针调用 . Release --- 释放 HGE 接口 , 调用了 hgeCreate 就应该调用 Release 释放 .
2. 系统函数 ( System functions ) : 这类函数都是以 System_ 开头 , 后面加上表示函数意义的单词 ( 不出现下划线 ) , 之后介绍的函数也将使用这种命名方式 , 即类型前缀 + 有意义的单词 :
System_Initiate System_Shutdown System_Start System_SetState System_GetState System_GetErrorMessage System_Log System_Launch System_Snapshot
从上图可以看见 : 1 ) 用于代码只需要架构在 HGE Helper Classes 之上 2 ) 通常游戏资源 ( Game Resources ) 需要使用 HGE 创作工具来产生
3. 体系结构概述 : 1 ) Core Functions 层 <1> 图形格式支持 : 支持 BMP, JPG, PNG, TGA, DDS, DIB 文件格式 <2> 支持窗口模式和全屏模式 <3> 音频支持和音乐回放 ( music playback ) : 支持 WAV, MP3, MP2, MP1 and OGG 音频文件格式 ( audio file formats ) 持压缩流的回放 . 声音大小和声道的控制 <4> 输入设备支持 : 鼠标和键盘 <5> 资源 : 读取硬盘上的资源 , 支持 ZIP 打包的文件格式 <6> 日志支持 2 ) Helper Classes 层 <1> 精灵 ( Sprites ) 和动画 ( Animations ) , 支持 MO3, IT, XM, S 3M, MTM, MOD and UMX 音乐文件格式 ( music file formats ) , 支
HgeM2引擎官方登录器配置教程
您正在观看的是<传奇帮>制作系统学习一条龙开区教程。
今天分享的教程:HgeM2引擎官方登录器配置传奇sf教程登录器跟引擎版本都是150226的。
登录器跟引擎必须配套,也就是说,记得把版本里面的引擎更新成150226的。
先学第一种,没有联网的电脑如何配置登录器。
登录器列表生成以后自动加密了。
这也就是为什么前面站长会说配置列表的时候,尽量一次性把信息写对我们在浏览器里面输入:127.0.0.1/QKServerList.txt免费的登录器不支持窗口跟分辨率调整。
退出游戏,关闭登录器会有弹窗广告。
HEG免费官方版登录器配置教程就做完了。
最后小提一下自动获得登录器列表的配置。
配置外网登录器。
到去注册一个帐号,上传列表文件,就可以获得外网登录器列表地址。
hge引擎-加载纹理
加载纹理HGE::Texture_Load函数Loads a texture from memory, resource pack or disk file.从内存、资源包或者磁盘文件加载纹理。
HTEXTURE Texture_Load(const char *filename,DWORD size = 0,bool bMipmap = false);Parameters参数filenameTexture file name.纹理文件名。
sizeIf this parameter isn't 0, it is the size of memory block containing the texture in one of the known formats and the parameter filename is treated as a pointer to this block.如果这个参数不是0,那么这个纹理在内存中的大小就使用参数filename中所指定的这个指针。
bMipmapIf true, a set of mipmap levels is automatically created and used for rendering.如果为真,一组mipmap标准将自动建立并使用渲染。
(Mipmap 是目前应用最为广泛的纹理映射技术之一,它可以在内存中保存不同分辨率和尺寸的纹理图形,当3D对象移动时允许纹理光滑变化。
)Return value返回值If successful, returns the texture handle.Otherwise returns 0.如果成功,返回纹理句柄。
否则返回0。
Remarks注释Supports BMP, DDS, DIB, JPG, PNG and TGA graphics file formats. DDS format allows usage of DXT1-DXT5 texture compression which results in better performance and lower video memory requirements.支持BMP, DDS, DIB, JPG, PNG 和TGA图形文件格式。
hge引擎lua写法
HGE引擎与Lua的结合可以通过以下步骤实现:1. 绑定HGE到Lua:这可以通过写pkg文件和使用tolua++.exe 程序处理该文件,从而生成绑定代码实现。
在生成绑定代码后,将其添加到自己的工程中一起编译即可。
目前已经绑定了HGE、hgeSprite、hgeFont、hgeResourceManager、hgeRect等类。
2. 编写Lua脚本:在绑定HGE后,可以开始编写Lua脚本。
例如,可以在脚本中创建HGE对象、设置属性、调用方法等。
以下是一个简单的示例代码,展示如何在Lua中使用HGE引擎创建一个精灵(Sprite):```lua-- 创建一个新的HGE游戏窗口local game = hge.new("Game")game:setCaption("HGE Lua Example")-- 创建一个场景local scene = game:add("Scene")-- 创建一个精灵,并设置其位置和大小local sprite = scene:add("Sprite")sprite:setPosition(100, 100)sprite:setSize(100, 100)-- 设置精灵的图像sprite:setTexture("example.png")-- 更新游戏窗口和场景game:run()```以上代码中,首先创建了一个新的HGE游戏窗口,然后添加了一个场景,并在场景中添加了一个精灵。
设置了精灵的位置、大小、图像等属性,最后运行游戏窗口。
注意,需要在代码中引入hge.lua 文件,以便在Lua中使用HGE引擎的函数和类。
可以使用类似于`require "hge"`的语句来引入该文件。
2D游戏引擎--HGE
在中国网游市场上,2D游戏占据了极大的市场份额
同样在Video Game市场上2D游戏依然以其独特的 风格吸引着众多玩家。
图形渲染
◦ 图形硬件的初始化 2D游戏引擎一般基于DirectX或OpenGL来完成对硬件的 初始化和游戏运行环境的定制。
◦ 项目运行的驱动 2D游戏引擎一般均会隔离游戏项目对操作系统的直接操作, 取而代之的使用其自己提供的一套运行机制。
◦ Helper classes
Sprites & Animations Fonts Particle systems & Distortion mesh Resource manager GUI Vectors & Colors
◦ Aesources Compiler Texture Tools Particle Systems Editor Bitmap Font Builder
◦ 物理系统 有的2D引擎中会提供简单的物理服务(如碰撞监测)
◦ 配套工具 快速开项目的支撑
HGE—免费的开源2D游戏引擎
HGE is an easy to use yet powerful hardware accelerated 2D game engine. It is a full featured middleware for all who want to develop commercial quality 2D games rapidly and easily. It covers all imaginable 2D game genres: you could create everything from a simple puzzle to advanced multilayered platformer or strategy without even thinking of any non game logic code! And you don't have to know anything about "window messages", DirectX programming and all that stuff. Instead you can start developing your own game within 15 minutes!
hge引擎
Hge引擎介绍Overview总述HGE is an easy to use yet powerful hardware accelerated 2D game engine. It is a full featured middleware for all who want to develop commercial quality 2D games rapidly and easily. It covers all imaginable 2D game genres:you could create everything from a simple puzzle to advanced multilayered platformer or strategy without even thinking of any non game logic code! And you don't have to know anything about "window messages", DirectX programming and all that stuff. Instead you can start developing your own game within 15 minutes!HGE是一个使用起来十分简单但是却拥有很强大的2D加速器的游戏引擎。
它使所有的以中间件进行开发的商业品质的2D游戏程序变得迅速且简单。
它覆盖了你能想象到的所有2D游戏流派:你可以创造出所有的东西从简单的谜语到高级的多层次的装置或者策略,却并不需要关心游戏的逻辑代码是否连贯。
同样你也可以不了解任何关于“window messages”,DirectX 设计和所有同等程度的信息。
将你自己的游戏替换到这个里面只需要15分钟!HGE runs on Microsoft Windows 98, 2000, NT, ME, XP and requires DirectX 8.0. It will run even on low-end video cards, including built in video cards such as Intel Solano (i815 chipset).HGE can be used with virtually any C++ compiler including Visual C++, Borland C++, MinGW and Metrowerks Codewarrior.HGE的运行条件基于是微软Windows 98, 2000, NT, ME, XP和必不可少的DirectX 8.0。
HGE引擎-绘制,声音,碰撞处理
HGE引擎-绘制,声⾳,碰撞处理另外,年代久远,该引擎官⽹早已上不去了1.库的安装和下载2.HGE实例#include<hge.h>#pragma comment(lib,"hge.lib")Q:为什么要导⼊这个lib?不是在配置⾥⾯添加了吗?A:由于不可知的原因,在VC6.0中配置时,加⼊了lib之后,所有其他的函数都可以使⽤,只有hgeCreate函数总是提⽰“⽆法解析的外部符号”。
⽽这个函数是创建HE游戏引擎的函数,可谓是巨头函数,这个函数不能⽤,那整个程序就Game Over了。
所以在⽤代码导⼊这个lib之后,就可以使⽤了。
//定义全局变量HGE * hge = NULL ;hgeQuad quad ; //⽤于保存绘图的顶点,纹理,和混⾊的函数Q:hgeQuad结构是什么?A:查看HEG的官⽹,上⾯解释说这个结构是跟绘图有关的结构。
如果要绘图,就需要有这个结构存在。
以下是这个结构的详细定义:struct hgeQuad{hgeVertex v[4] ;HTEXTURE tex ;int blend ;};上⾯结构中的⼏个成员分别是hgeVertex顶点结构,⽤于保存顶点的信息;第⼆个是HTEXTURE结构的数据,此结构是纹理的句柄;blend 表⽰混⾊模式。
HEFFECT snd ; //保存⾳效的句柄float x = 100.0f , y = 100.0f ;float dx = 0.0f , dy = 0.0f ;const float speed = 90 ;const float friction = 0.98f ;//定义播放⾳效的函数void boom(){int pan = int((x-400)/4);float pitch = (dx*dx+dy*dy)*0.0005f + 0.2f ;hge->Effect_PlayEx(snd,100,pan,pitch); //snd是⾳频资源的句柄,100表⽰声⾳⼤⼩,pan表⽰左右声道,pitch表⽰播放频率}Q:Effect_PlayEx函数是什么⽤处?A:Effect_PlayEx函数,⽤于播放指定的⾳效⽂件,同时可以根据后⾯的⼏个参数来进⾏声⾳,声道,播放频率的改变。
HGE游戏开发第四课
HGE游戏开发第四课
授课人:张达伟
LOGO
• 可行性分析 1. 技术可行性分析 HGE 作为一款硬件加速( Hardware accelerated )的 2D 游戏引擎( Game Engine ) ,可以用于开发任何类 型的 2D 游戏。 HGE 是一个富有特性的中间件,HGE 封装性良好 ,开发者仅需要关心游戏逻辑 ( Game Logic ) , 而不需要在意 DirectX , Windows 消息循 环等繁琐的开发环节。 本坦克大战游戏基于HGE引擎开发,编程语言选择C++ 高级编程语言。HGE引擎是基于C++语言的游戏引擎开 发库,开发库提供了强大的功能函数和接口,比如精灵 贴图、音频处理、图形渲染,设备输入输出和粒子特效 系统等,可以很好的支持2D游戏的开发任务。
LOGO
2. 经济可行性分析本坦克大战游戏基于HGE免费开源游戏引擎,大大降低 了本游戏的开发成本。随着IT信息技术的飞速发展,网 络上关于HGE开发的教程和材料可以方便的获取,降低 了开发者的开发难度。 坦克大战这款经典的游戏拥有庞大的用户群,用户的学 习成本很低,市场推广难度较小。
LOGO
3. 操作可行性分析 本游戏操作的设计完全按照传统的游戏玩法进行设计, 能够使用户很快上手并熟练掌握。因为游戏是利用C++ 进行开发游戏的流畅度很好。游戏引擎底层调用DX8.0 以上版本,且具有良好的向下兼容特性,游戏可以运行 在Windows XP以上的Windows系统。
LOGO
• 需求分析 1.坦克移动 2.坦克移动有碰撞检测 3.坦克射击 4.电脑具有一定的AI 5.可以用编辑器编辑关卡 6.子弹爆炸的粒子特效 7.游戏过关升级 8.游戏结束积分
hge引擎-hge系统状态
Hge系统状态HGE System statesHGE系统状态HGE has various internal system states that can be changed and received with System_GetState and System_SetState functions. The state names are defined with hgeState enumeration type: HGE是多方面的内部系统状态,可以使用System_GetState 和System_SetState函数对其进行更改和接收。
使用hgeState列举名称说明类型:System state 系统状态Type类型Default默认Description说明HGE_FRAMEFUNC bool*() NULL Pointer to a user-definedframe function that takes noparameters and returnsbool.This function will becalled each frame, put yourgame logic here. When youwant the application toterminate, return true.Otherwise return false. Ifthis state is not set,System_Start function callwill fail. Although it can bechanged at any time later.指向用户定义的框架函数,它无法获取参数并返回bool。
这个函数将会被各个框架调用,将你的游戏逻辑放在这里。
当你想要应用程序终止时,返回真。
否则返回假。
如果这个状态不设定,System_Start函数命令将会失败。
尽管它能在任何事件之后改变。
hge引擎-Hge按键代码
Hge按键代码HGE Virtual Key CodesHGE按键代码HGE virtual-key codes are used with Input_GetKeyState,Input_GetKey and other input functions to specify one of the keyboard keys or mouse buttons. They are defined in hge.h header:HGE有效键码使用Input_GetKeyState, Input_GetKey和其他输入函数指定键盘按键或者鼠标按钮中的一个。
他们定义在hge.h头:HGEK_LBUTTON Left mouse button鼠标左键HGEK_RBUTTON Right mouse button鼠标右键HGEK_MBUTTON Middle mouse button (wheelbutton)鼠标中键(滚轮键)HGEK_ESCAPE ESCAPE keyESC键HGEK_BACKSPACE BACKSPACE key退格键HGEK_TAB TAB keyTab键HGEK_ENTER Any of the two ENTER keys回车键HGEK_SPACE SPACE key空格键HGEK_SHIFT Any of the two SHIFT keysSHIFT键HGEK_CTRL Any of the two CTRL keysCTRL键HGEK_ALT Any of the two ALT keysALT键HGEK_LWIN Left WINDOWS key左WIN键HGEK_RWIN Right WINDOWS key右WIN键HGEK_APPS APPLICATIONS keyHGEK_PAUSE PAUSE key暂停键HGEK_CAPSLOCK CAPS LOCK key大小写开关键HGEK_NUMLOCK NUM LOCK key数字键盘锁键HGEK_SCROLLLOCK SCROLL LOCK key滚动锁键HGEK_PGUP PAGE UP keyPageUP键HGEK_PGDN PAGE DOWN keyPageDown键HGEK_HOME HOME keyHome键HGEK_END END keyEnd键HGEK_INSERT INSERT keyInsert键HGEK_DELETE DELETE keyDelete键HGEK_LEFT LEFT ARROW key左箭头键HGEK_UP UP ARROW key上箭头键HGEK_RIGHT RIGHT ARROW key右箭头键HGEK_DOWN DOWN ARROW key下箭头键HGEK_0Main keyboard '0' key主键盘“0”键HGEK_1Main keyboard '1' key主键盘“1”键HGEK_2Main keyboard '2' key主键盘“2”键HGEK_3Main keyboard '3' key主键盘“3”键HGEK_4Main keyboard '4' key主键盘“4”键HGEK_5Main keyboard '5' key主键盘“5”键HGEK_6Main keyboard '6' key主键盘“6”键HGEK_7Main keyboard '7' key主键盘“7”键HGEK_8Main keyboard '8' key主键盘“8”键HGEK_9Main keyboard '9' key主键盘“9”键HGEK_B'B' key HGEK_C'C' key HGEK_D'D' key HGEK_E'E' key HGEK_F'F' key HGEK_G'G' key HGEK_H'H' key HGEK_I'I' key HGEK_J'J' key HGEK_K'K' key HGEK_L'L' key HGEK_M'M' key HGEK_N'N' key HGEK_O'O' key HGEK_P'P' key HGEK_Q'Q' key HGEK_R'R' key HGEK_S'S' key HGEK_T'T' key HGEK_U'U' key HGEK_V'V' keyHGEK_X'X' keyHGEK_Y'Y' keyHGEK_Z'Z' keyHGEK_GRAVE Grave accent (`)重音符“`”键HGEK_MINUS Main keyboard MINUS key (-)主键盘“-”键HGEK_EQUALS Main keyboard EQUALS key (=)主键盘“=”键HGEK_BACKSLASH BACK SLASH key (\)反斜杠“\”键HGEK_LBRACKET Left square bracket ([)左中括号“[”键HGEK_RBRACKET Right square bracket (])右中括号“]”键HGEK_SEMICOLON Semicolon (;)分号“;”键HGEK_APOSTROPHE Apostrophe (')单引号“'”键HGEK_COMMA Comma (,)逗号“,”键HGEK_PERIOD Main keyboard PERIOD key (.)主键盘“.”键HGEK_SLASH Main keyboard SLASH key (/)主键盘“/”键HGEK_NUMPAD0Numeric keyboard '0' key数字键盘“0”键HGEK_NUMPAD1Numeric keyboard '1' key数字键盘“1”键HGEK_NUMPAD2Numeric keyboard '2' key数字键盘“2”键HGEK_NUMPAD3Numeric keyboard '3' key数字键盘“3”键HGEK_NUMPAD4Numeric keyboard '4' key数字键盘“4”键HGEK_NUMPAD5Numeric keyboard '5' key数字键盘“5”键HGEK_NUMPAD6Numeric keyboard '6' key数字键盘“6”键HGEK_NUMPAD7Numeric keyboard '7' key数字键盘“7”键HGEK_NUMPAD8Numeric keyboard '8' key数字键盘“8”键HGEK_NUMPAD9Numeric keyboard '9' key数字键盘“9”键HGEK_MULTIPLY Numeric keyboard MULTIPLY key (*)数字键盘“*”键HGEK_DIVIDE Numeric keyboard DIVIDE key (/)数字键盘“/”键HGEK_ADD Numeric keyboard ADD key (+)数字键盘“+”键HGEK_SUBTRACT Numeric keyboard SUBTRACT key (-)数字键盘“-”键HGEK_DECIMAL Numeric keyboard DECIMAL key (.)数字键盘“.”键HGEK_F1F1 keyF1键HGEK_F2F2 keyF2键HGEK_F3F3 keyF3键HGEK_F4F4 keyF4键HGEK_F5F5 keyF5键HGEK_F6F6 keyF6键HGEK_F7F7 keyF7键HGEK_F8F8 keyF8键HGEK_F9F9 keyF9键HGEK_F10F10 keyF10键HGEK_F11F11 keyF11键HGEK_F12F12 keyF12键。
hge引擎-硬件色彩格式
Hge硬件色彩格式HGE Hardware color formatHGE硬件色彩格式Several HGE functions use color as a parameter or return value.It is just a DWORD, containing four 8-bit values for Red, Green, Blue and Alpha color components in the following way: 0xAARRGGBB.个别HGE函使用色彩参数或者返回色彩参数值。
一个DWORD包含4个8位值代表红色,绿色,蓝色和Alpha,例如如下的例子:0xAARRGGBB。
I.e. the highest BYTE of DWORD contains the Alpha value. The next BYTE contains the Red value. Then goes Green value. And the lowest BYTE contains Blue value.也就是最高的DWORD的BYTE包含Alpha值。
接下来的BYTE包含红色值。
然后是绿色值。
最低的BYTE包含蓝色值。
Macros宏You could use these macros to manipulate DWORD color values:你可以使用这些宏来操纵DWORD色彩值。
ARGB(a,r,g,b) ((DWORD(a)<<24) + (DWORD(r)<<16) + (DWORD(g)<<8) + DWORD(b))ARGB macro builds a DWORD color value from it's components. ARGB宏从它的成分构造中建造DWORD色彩值。
GETA(col) ((col)>>24)GETR(col) (((col)>>16) & 0xFF)GETG(col) (((col)>>8) & 0xFF)GETB(col) ((col) & 0xFF)GETA, GETR, GETG and GETB macros return the specified component of the composite DWORD.GETA, GETR, GETG 和GETB宏返回复合DWORD的指定成分。
hge引擎-hge输入事件结构
hge输入事件结构HGE Input Event structureHGE输入事件结构Input Event structure is used with Input_GetEvent function to receive buffered input events:输入事件结构是使用Input_GetEvent函数接收缓存输入事件:struct hgeInputEvent{int type;int key;int flags;int chr;int wheel;float x;float y;};Members成员typeType of the event, could be one of these:事件的打印,可以使用:INPUT_KEYDOWN - a keyboard key was pressed downINPUT_KEYDOWN——按下键盘键INPUT_KEYUP - a keyboard key was releasedINPUT_KEYUP ——释放键盘键INPUT_MBUTTONDOWN - a mouse button was pressed downINPUT_MBUTTONDOWN——按下鼠标按钮INPUT_MBUTTONUP - a mouse button was releasedINPUT_MBUTTONUP——释放鼠标按钮INPUT_MOUSEMOVE - mouse was movedINPUT_MOUSEMOVE——移动鼠标INPUT_MOUSEWHEEL - mouse wheel was rotatedINPUT_MOUSEWHEEL——旋转鼠标滚轮keyThe key code.键码。
Is valid only for INPUT_KEYDOWN, INPUT_KEYUP, INPUT_MBUTTONDOWN and INPUT_MBUTTONUP events.只对INPUT_KEYDOWN, INPUT_KEYUP, INPUT_MBUTTONDOWN和INPUT_MBUTTONUP事件有效。
hge引擎-Hge函数列表
Hge函数列表Here you'll find description of all HGE system layer functions:在这里你可以找到所有关于HGE系统层功能的说明:Interface functions接口函数hgeCreate 从HGE接口返回一个指针.Release 释放获得的HGE接口.System functions系统函数System_Initiate 初始化所有硬件、软件的时候需要运行引擎.System_Shutdown 恢复视频状态,释放所有的分配资源.System_Start 开始运行设定好的框架函数.System_SetState 设定系统内部状态.System_GetState 返回系统内部状态值.System_GetErrorMessage 返回最后出现的HGE错误信息. System_Log 在日志文件中写入格式化信息. System_Launch 开创一个URL或者外部执行数据文件.System_Snapshot 将当前屏幕截图存入文件.Resource functions资源函数Resource_Load 从磁盘加载资源到内存. Resource_Free 从内存中将先前存储的资源删除掉.Resource_AttachPack 配置一个资源包.Resource_RemovePack 移除一个资源包.Resource_RemoveAllPacks 移除所有之前加载的资源包. Resource_MakePath 建立绝对的文件路径. Resource_EnumFiles 按特定的通配符列举文件. Resource_EnumFolders 按特定的通配符列举文件夹.Initialization file functions配置文件函数Ini_SetInt 将整型值写入初始化文件.Ini_GetInt 从初始化文件中读取一个整型值.Ini_SetFloat 将浮点型值写入初始化文件.Ini_GetFloat 从初始化文件中读取一个浮点行值. Ini_SetString 将一个字符串写入初始化文件.Ini_GetString 从初始化文件中读取一个字符串值.Random number generation functions随机数生成函数Random_Seed 确立随机发生数的种子.Random_Int 获得一个整型随机数.Random_Float 获得一个浮点行随机数.Timer functions时间片函数Timer_GetTime 返回使用System_Initiate函数命令的时间.Timer_GetDelta 返回最后一次调用框架的时间.Timer_GetFPS 返回最近的FPS速率.Sound effect functions声音效果函数Effect_Load 从磁盘或内存加载声音效果.Effect_Free 删除已经加载的效果和相关联的资源. Effect_Play 开始播放声音效果.Effect_PlayEx 根据指定的参数开始播放声音效果.Music functions音乐函数Music_Load 从磁盘或内存加载音乐.Music_Free 删除已经加载的音乐和相关联的资源. Music_Play 开始播放音乐.Compressed audio stream functions压缩音频流函数Stream_Load 从磁盘或内存加载数据流.Stream_Free 删除已经加载的数据流和相关联的资源.Stream_Play 开始播放数据流.Audio channel functions音轨函数Channel_SetPanning 改变音轨面板.Channel_SetVolume 改变音轨音量.Channel_SetPitch 改变音轨的音高.Channel_Pause 暂停音轨.Channel_Resume 重新开始一个暂停的音轨. Channel_Stop 停止一个音轨.Channel_StopAll 停止全部活动的音轨.Channel_IsPlaying 测试音轨是否正在播放.Channel_SetPos 对正在播放的音轨进行快进或快退. Channel_GetPos 取回正在播放的音轨的位置. Channel_GetLength 取回正在播放的音轨的总长度.Input functions输入函数Input_GetMousePos 返回当前鼠标光标的坐标.Input_SetMousePos 设置当前鼠标光标的坐标.Input_GetMouseWheel 在调用框架函数之前返回鼠标滚轮是否移动.Input_IsMouseOver 测试鼠标光标是否没有在HGE窗口内部.Input_GetKeyName 从代码中返回一个键名或鼠标按钮名. Input_GetKeyState 测试按键或鼠标按钮是否按下.Input_GetKey 返回调用框架函数之后最后按下的键. Input_GetChar 返回调用框架函数之后最后按下的键的字符.Input_GetEvent 从队列中获得下一个输入事件.Graphics functions图形函数Gfx_BeginScene 开始渲染图形.Gfx_EndScene 结束渲染和刷新屏幕.Gfx_Clear 清除渲染目标与Z缓冲.Gfx_RenderLine 渲染一条线.Gfx_RenderTriple 渲染一个三角形.Gfx_RenderQuad 渲染一个矩形.Gfx_StartBatch 开始批量渲染简单绘制.Gfx_FinishBatch 结束渲染使用者的一批简单绘制.Gfx_SetClipping 设置剪裁区域.Gfx_SetTransform 设置全局场景转换.Render target functions着色目标函数Target_Create 创建一个渲染目标.Target_Free 删除渲染目标和相关联的资源. Target_GetTexture 返回渲染目标的纹理句柄.Texture functions纹理函数Texture_Create 创建一个空纹理.Texture_Load 从磁盘或内存加载纹理.Texture_Free 删除已经加载的的纹理与相关联的资源.Texture_GetWidth 返回纹理象素宽度.Texture_GetHeight 返回纹理象素高度.Texture_Lock 锁定一个纹理的访问路径.Texture_Unlock 解除锁定纹理.。
hge引擎-创建渲染对象
创建渲染对象HGE::Target_Create函数Creates a render target.创造一个渲染目标。
HTARGET Target_Create(int width,int height,bool zbuffer);Parameters参数widthWidth of the render target to be created.需要创造的渲染目标的宽。
heightHeight of the render target to be created.需要创造的渲染目标的高。
z-bufferIf true, a Z-buffer will be created and used for rendering to the render target.如果是真,Z-buffer将创造并渲染一个渲染目标。
Return value返回值If successful, returns the render target handle to use with Gfx_BeginScene. Otherwise returns 0.如果使用成功,使用Gfx_BeginScene返回渲染目标句柄。
否则返回0。
Remarks注释The render target dimensions must be a power of 2. If this condition isn't met, the requested dimensions are automatically adjusted to the closest power of 2 dimensions, bigger than the requested ones.渲染目标的尺寸必须是2的倍数。
如果这个条件是不能碰到的,被申请的尺寸将会自动调整到比原来大的最接近2的倍数的尺寸。
Render targets support alpha channel in 32-bit video modes only, in 16-bit video modes render targets are always opaque. You could read HGE_SCREENBPP system state to discover in what video mode HGE is currently running.渲染目标只能在32位视频模式下支持alpha通道,在16位视频模式下渲染目标将一直呈现不透明状态。
hge引擎-渲染线条
渲染线条HGE::Gfx_RenderLine函数Renders a line.渲染线。
void Gfx_RenderLine(float x1,float y1,float x2,float y2,DWORD color = 0xFFFFFFFF,float z = 0.5f);Parameters参数x1Starting point X-coordinate.起点的X坐标。
y1Starting point Y-coordinate.起点的Y坐标。
x2Ending point X-coordinate.终点的X坐标。
y2Ending point Y-coordinate.终点的Y坐标。
colorOptional color value.Default is 0xFFFFFFFF.可随意选择颜色。
默认是0xFFFFFFFF。
zOptional Z-order.Default is 0.5f.可随意选择Z轴次序。
默认值是0.5f。
Remarks注释Gfx_RenderLine function must be called between the Gfx_BeginScene and Gfx_BeginScene calls.Gfx_RenderLine函数必须在Gfx_BeginScene和Gfx_BeginScene之间调用。
Gfx_RenderLine omits the last point of the line, so you can draw joint lines without any additional coordinates adjustments. The color parameter includes alpha value. See the Hardware color format section for details. If Z-buffer isn't used, the Z-order value is ignored.Gfx_RenderLine忽略线的最后一个点,因此你可以在没有任何附加的协调调整器的情况下画线的接合点。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Hge引擎介绍Overview总述HGE is an easy to use yet powerful hardware accelerated 2D game engine. It is a full featured middleware for all who want to develop commercial quality 2D games rapidly and easily. It covers all imaginable 2D game genres:you could create everything from a simple puzzle to advanced multilayered platformer or strategy without even thinking of any non game logic code! And you don't have to know anything about "window messages", DirectX programming and all that stuff. Instead you can start developing your own game within 15 minutes!HGE是一个使用起来十分简单但是却拥有很强大的2D加速器的游戏引擎。
它使所有的以中间件进行开发的商业品质的2D游戏程序变得迅速且简单。
它覆盖了你能想象到的所有2D游戏流派:你可以创造出所有的东西从简单的谜语到高级的多层次的装置或者策略,却并不需要关心游戏的逻辑代码是否连贯。
同样你也可以不了解任何关于“window messages”,DirectX 设计和所有同等程度的信息。
将你自己的游戏替换到这个里面只需要15分钟!HGE runs on Microsoft Windows 98, 2000, NT, ME, XP and requires DirectX 8.0. It will run even on low-end video cards, including built in video cards such as Intel Solano (i815 chipset).HGE can be used with virtually any C++ compiler including Visual C++, Borland C++, MinGW and Metrowerks Codewarrior.HGE的运行条件基于是微软Windows 98, 2000, NT, ME, XP和必不可少的DirectX 8.0。
它甚至可以运行在抵挡视频卡上,包括集成的视频卡例如Intel Solano (i815 chipset)。
HGE适用于现实中所有的C++编译器包括Visual C++,Borland C++,MinGW 与 Metrowerks Codewarrior.Key features特色Strict concentration on subject "2D games"精确的专心于“2D游戏”主题Task oriented design. Nothing redundant and lots of higher level features.任务导向的设计。
不采用任何多余和过高水平的技术。
Simple interface and extreme easiness简单的界面与极端的容易。
You don't have to know anything about system programming and don't need any additional libraries.Classes and headers that make sense. Very easy to set up and use.你不需要知道任何关于系统规划也不需要拥有附加的库。
类与头很有意义,非常利于设定和使用。
Technical advanceness技术上的进步HGE is built upon modern Direct3D API what allows lots of special effects and great performance.Alpha blending, color tinting, geometry transformations etc. without performance hit at all!HGE是建立在现在十分流行的Direct3D 应用程序接口上的,它允许很多特殊的效果并达到十分强大的结果。
Alpha混合,颜色渲染,几何变形等等。
这些均不需要进行激活就可以执行。
Complete and clear documentation完整清楚的文件All the features thoroughly grouped and described, lots of general game development hints provided.所有的特色组件和记述并提供很多普通游戏的开发的线索。
HGE just feels right!HGE可以真正感觉到好处!HGE is highly consistent.Every minor feature is carefully planned and interconnected with others.HGE是非常稳定的。
每一个特色的科目都是可以安全的与其他相关联的。
Free免费HGE is distributed under The zlib/libpng license, i.e. it is completely free for any uses including commercial ones.HGE是分布在zlib/libpng许可证之下的,它可以完全免费的提供给任何的使用者包括商业用户。
Architecture框架HGE provides three layers of abstraction covering all the various needs of a single game developer or a game development team:HGE按照游戏开发者或游戏开发团队的不同需要提供3个可供提取的层:Core functions核心功能All the system-dependent functions and routines.所有的主系统函数和程序。
Helper classes助手类Higher level game object classes.更高水平的游戏对象类。
Authoring tools创造工具Set of tools for game development. 为了游戏的开发设定工具。
Core functions核心功能Hardware accelerated 2D graphics2D图形加速器Support for BMP, DDS, DIB, JPG, PNG, TGA file formats; windowed and fullscreen modes; exact texel-to-pixel rendering; arbitrary shapes rendering; drawing lines and filled shapes; rendering to texture; direct texture data access; clipping regions; various blending modes; alpha channels and blending;tinting; global scene transformations; Z-buffer.支持BMP, DDS, DIB, JPG, PNG, TGA文件格式;窗口和全屏2种模式;精确的象素渲染;任意的形状渲染;画线和图形填充;纹理渲染;直接的纹理路径数据;区域剪裁;不同的混合模式;alpha通道与混合;染色;全局场景的转换;Z-buffer是一项处理3D物体深度信息的技术,它对不同物体和同一物体不同部分的当前Z坐标进行纪录,在进行着色时,对那些被其他物体所遮挡、不可见的结构进行隐藏。
Audio effects and music playback音频效果和音乐重放Support for WAV, MP3, MP2, MP1 and OGG audio file formats; support for MO3, IT, XM, S3M, MTM, MOD and UMX music file formats; compressed streams playback; flexible volume, panning and pitch control.支持WAV, MP3, MP2, MP1 和OGG音频文件格式;支持MO3, IT, XM, S3M, MTM, MOD 和 UMX音乐文件格式;压缩流重放装置;灵活的音量,定音控制面板。
Keyboard and mouse input handling键盘和鼠标的输入操作Get keys state and clicks; get key names;translate keycode to character; mouse position & wheel tracking; event-based and poll-based input handling.设定按键状态和声音;获得键名;转换按键代码为字符码;鼠标位置与滚轮轨迹;事件装置和测验装置的输入处理。
Resources资源Load resources from disk files; load resources from ZIP file (resource pack);easy switching between both; multiple resource packs support.加载资源来自于磁盘文件;加载资源来自于ZIP文件(资源包);简单的相互转换;多样的资源包支持。
Timing functions定时功能Frame rate synchronisation with unlimited FPS; fixed FPS mode; monitor refresh synchronisation; FPS counting; idle time handling.同步无限制的FPS(FPS是指每秒中填充图像的帧数)画面速度;固定的FPS模式;同步监控更新;FPS 记数;空闲时间处理。