您当前的位置:网站首页 » 实用技术

栏目导航

站内搜索









如何从零开始写一个简单的游戏引擎

做一个游戏引擎,稍微想想就觉得挺复杂了,先罗列出几个必须要做的模块:资源和文件管理系统,游戏主循环,输入系统,渲染引擎,动画系统,碰撞系统,游戏性系统,若是想的再复杂一点,还得加入游戏相关的调试工具和性能剖析工具。

这样一来,就很容易陷入过度设计的泥沼,在大三上学期时,我们做的XiHad项目(NextRPG/Xihad · GitHub)就遇到了这样的问题,引擎的过度设计导致后续的开发时间被无限缩短,最终却发现引擎中很多的功能实际上游戏中却用不到,真是令人哭笑不得。

由于题目中说的是实现一个简单的游戏引擎,我给出的建议是:先用OpenGL或者DirectX制作一个简单的游戏,再把游戏中可复用的部分剥离出来,这就成了一个简单的游戏引擎。

游戏史上几个最著名的游戏引擎都是这样做出来的,比如:Quake游戏引擎是制作雷神之锤的副产品,虚幻是制作战争机器的副产品,所以,我相信这种将游戏引擎作为游戏的副产品的经验同样适用于大型游戏引擎的开发。