首页 > 代码库 > 游戏引擎架构
游戏引擎架构
最近对游戏引擎架构比较感兴趣,于是研究了下这方面的书籍。
比较推荐的两本书是:
1. Game Engine Architecture.
2. Game Code Complete.
他们全面说明了一个游戏引擎的组成部分,和每个部分所实现的基本代码。
当然我这里就我所认识的游戏引擎的组成部分跟大家说下,最后我会附加一副PDF图片,看到他你会吃惊说:噢,原理这就是游戏引擎的架构,她太漂亮了。
游戏引擎有以下几部分组成。
// ------------------------- low-level library Begin -------------------------------------
A. Utility Library [ 被调用 ]
1. Lists
2. Map
3. Strings
4. Arrays
5. Hash Tables
6. Smart Links
7. Reference Counters
8. Graphs and Trees
认为以上的工具库就是一个游戏引擎该有的基本数据类型及其操作。
B. System Utilities [ 被调用 ]
1. Threads
2. Mutexes
3. Locks
4. Logging Tools [ 调用 System Variables and System Commands ]
5. System Variables [ 调用 System Commands ]
6. System Commands
以上就是系统工具的组成部分。
C. Math Library [ 被调用 ]
1. Vectors 矢量
2. Matrices 矩阵
3. Quaternions 四元法(一种查找方式)
4. RGBA Colors
5. Linear Algebra 线性数学
6. Polygon Utilities
7. Random Numbers
8. Bounding Volumes
以上就是一个游戏引擎中Math Library都应该提供的数学计算功能。
// ------------------------- low-level library End -------------------------------------
// ------------------------- Base Services Begin -------------------------------------
// ------------------------- Base Services End -------------------------------------
以下部分是大家比较熟悉的部分:
// ------------------------- System Managers Begin -------------------------------------
// ------------------------- System Managers End -------------------------------------
游戏引擎架构