游戏引擎
游戏引擎包含以下系统: 渲染引擎(即“渲染器”,含二维图像引擎和三维图像引擎)、物理引擎、碰撞检测系统、音效、脚本引擎、电脑动画、人工智能、网络引擎以及场景管理。
游戏引擎发展历程
1993 id Tech1
1998 Unreal Engine1
2005 Unity
2006 CryEngine
2009 Unreal Development Kit (UDK)
其他引擎
Source
RAGE
Snow drop
FROSTBITE
FOX ENGINE
游戏引擎架构
游戏专用子系统
武器 道具 载具 谜题 其他
游戏渲染
玩家机制
游戏摄像机
人工智能
通用子系统
场景渲染
事件处理
角色动画
声音
特效
AI
物理模拟
渲染引擎
低阶渲染器
图形设备接口
其他渲染器组件
场景图/删除优化
视觉效果
前端
剖析和调试工具
碰撞和物理
动画
人体学接口设备
音频
在线多人/网络
游戏性基础系统
资源管理系统
唯一性:同一个资源在内存中只有一个副本
生命周期:
内存用量:
引用关系:
复合资源:
异步加载:资源加载不阻塞游戏逻辑的进行
核心系统
反射:进程获取自身的类型信息,动态查找属性、调用函数
平台独立层
对操作系统和第三方软件开发包进行封装 ,隔离操作系统和上层引擎功能
第三方软件开发包和中间件
三维图形SDK
DirectX
Metal
OpenGL
Vulkan
三大物理引擎
Havok
PhysX by NVIDIA
Bullet physics Library
其他SDK
Oculus
Google VR
STEAM VR
LEAP motion
数据结构与算法
STL
STLport
Boost
Loki
角色动画
Havok AI
Granny
IKINEMA
Edge
图形
碰撞和物理
角色动画
人工智能
Kynapse
生物力学角色模型
Endorphin
Euphoria
操作系统
PC
在PC游戏不能假设拥有硬件所用控制权,多个进程共享硬件资源。
游戏主机
老主机:以轻量级库存在,链接到游戏的执行文档。
中断游戏执行,接管某些系统资源
设备驱动程序
操作系统 或 硬件厂商提供的软件组件
管理硬件资源
隔离硬件及上层软件
目标硬件(PC、Xbox One、PS4 ......)
Windows/Linux 平台的 PC
苹果的Mac
IOS / Android 平台设备
微软 Xbox 系列
索尼 playstation 系列
任天堂 NDS /Will/ Switch