头两节算是导论课,讲了现代引擎基本架构和一些理念。
游戏引擎最基础的五层架构:
- 工具层,就是游戏开发人员编辑的那些东西,以及对建模等软件的文件格式预览支持等
- 功能层,提供动画、渲染等功能,主要包含tickLogic和tickRender函数。哪些功能是游戏开发人员能调整的,哪些功能是引擎规定好的就是从这里区分出来的。还应当考虑对多处理机的支持
- 资源层,管理各种贴图模型等,预先将资源转化为资产(描述资产之间的关系的文件也是资产),即引擎自有的更便于运行的文件,并在运行时管理其整个生命周期
- 核心层,为上层提供基础功能,主要是各种更高效率的数学库(可能牺牲精度)、高效的内存管理(专门优化,比stl都要高效,比如1.把数据放在一起2.顺序读写3.尽可能一起访问)
- 平台层,提供跨平台支持、不同图形api的支持