一 开篇介绍

现在开始解读HGE接口类(Interface class)的一些公共函数 
    正如在上一篇文章中提到的,使用的公共函数调用方式都是CALL(不记得可以翻看),纯虚虚函数基本都是由hge_impl.h继承的,部分内联函数是hge.h自身实现的,比如说System_SetState相关重载函数,其他的实现的都在子类的cpp中实现,其中有人也许会有疑问: 为啥在hge中会有私有的纯虚函数?其实私有和公共关系并不大,virtual机制是dynamic的,发生在运行时,访问权限是静态的(static),程序编译的时候作用,两者的关系影响并没多少,如果没有特殊的使用,父类和子类的访问权限可以交换使用。

二 函数解读

2.1  系统函数

【HGE引擎】源码解析——常用公共函数(二)_初始化

系统函数 都是使用System_ 开头的,很醒人耳目,只有Release例外
                   2.1.1  System_Initiate          初始化 软硬件的
                   2.1.2  System_Shutdown    关闭当前窗口,恢复视频/音频状态,释放所有的分配资源
                   2.1.3  System_Start    开始运行设定好的框架函数. (帧/渲染等自定义函数)
                   2.1.4  System_GetErrorMessage   返回HGE出错信息
                   2.1.5  System_Log               自定义日志文件中写入格式信息,程序编译/运行出错,日志文件都会有文字描述错误信息
                   2.1.6  System_Launch         执行 一段链接或者可运行程序,实现机理是ShellExecute
                   2.1.7  System_Snapshot     实现方式是 按特定的文件路径通配符找到 ,如果当前路径下不存在这样文件,则以shot+ 编号+.dmp格式保存文件名,使用D3D的api
    ——D3DXSaveSurfaceToFile保存

      2.2  Resource 资源函数

【HGE引擎】源码解析——常用公共函数(二)_初始化_02

2.2.1   Resource_Load             从磁盘加载资源到内存. 

               2.2.2   Resource_Free              从内存中将先前存储的资源删除掉. 

               2.2.3   Resource_AttachPack      配置一个资源包. 

               2.2.4   Resource_RemovePack   移除一个资源包. 

               2.2.5   Resource_RemoveAllPacks   移除所有之前加载的资源包. 

               2.2.6    Resource_MakePath     建立绝对的文件路径. 

               2.2.7    Resource_EnumFiles     按特定的通配符列举文件. 

               2.2.8    Resource_EnumFolders    按特定的通配符列举文件夹.

    2.3  Config File 配置文件函数

【HGE引擎】源码解析——常用公共函数(二)_初始化_03

2.3.1      Ini_SetInt        将整型值写入初始化文件. 

               2.3.2      Ini_GetInt        从初始化文件中读取一个整型值. 

               2.3.3      Ini_SetFloat    将浮点型值写入初始化文件. 

               2.3.4      Ini_GetFloat    从初始化文件中读取一个浮点行值. 

               2.3.5      Ini_SetString    将一个字符串写入初始化文件. 

               2.3.6      Ini_GetString    从初始化文件中读取一个字符串值.



2.4  Random   随机数函数

【HGE引擎】源码解析——常用公共函数(二)_开源引擎_04

2.4.1         Random_Seed    确立随机发生数的种子. 

                    2.4.2         Random_Int        获得一个整型随机数. 

                    2.4.3         Random_Float    获得一个浮点行随机数.

    2.5   Time Slice 时间片函数

【HGE引擎】源码解析——常用公共函数(二)_初始化_05

2.5.1          Timer_GetTime    返回使用System_Initiate函数命令的时间. 
            2.5.2          Timer_GetDelta    返回最后一次调用框架的时间.
            2.5.3    Timer_GetFPS      返回最近的FPS速率.

— 未完待续…