《游戏引擎架构》学习笔记1 --- 认识引擎开发
一、游戏开发团队组成
设计师
制作人
工程师
艺术家
其他人员
二、游戏
概念:被计算机科学家称为软实时互动基于代理计算机模拟的例子
软实时:soft real-time system
模拟: 用数学方式来为一些真实世界的子集建模。近似化和简化是游戏开发者最有力的两个工具
不同的游戏:第一人称射击,平台及第三人称游戏,格斗游戏,竞速游戏,实时策略游戏,大型多人在线
三、游戏引擎
概念:指可扩展的软件,而且不需要大量修改就能称为多款游戏软件的基础
雷神之锤引擎家族
虚幻引擎
微软XNA GameStudio
Unity3D
开源引擎:OGRE、Panda3D、Yake、Crystal Space、Torque、Irrlicht
四、引擎架构
软件系统,游戏引擎也是以软件层构建的,通常上层依赖下层,下层不依赖上层。
架构分层(从上至下层级越高):
硬件:运行的目标硬件如PS、PC、Iphone、Xbox360等
驱动层:硬件厂商提供的最低阶段的软件组件。负责管理硬件资源,隔离操作系统及上层引擎,是上层软件无须理解不同的硬件版本的通信细节
操作系统:OS是一只运行的,协调一个机器上多个程序的执行。
第三方软件开发包和中间件:指一些SDK和middleware。比如数据结构算法公共库、图形库、物理系统库、角色动画库、AI库等
平台独立层:抽象出platform indepence layer平台独立层支持运行在不同的平台上,把引擎底层和系统、硬件平台隔离起来
核心系统:core system。 封装一些核心的实用软件库。如IO、内存管理、数学库、自定义数据结构等等
资源管理:统一的一组接口去访问任何类型的游子资源及其他引擎导入数据。
引擎基础库:渲染引擎、剖析和调试工具、碰撞和物理、动画及动画状态机、人体学接口设备、音频、多人在线/网络等等
游戏性系统:游戏世界、游戏对象、事件系统、人工智能基础、个别专用子系统