前言:
研究3D游戏相关的知识有了不少的时间了.最近一段时间开始写自己的3D图像引擎-WuguiEngine. 代码也参考了不少的资料. 从引擎的功能上来说,不求能够让大众接受, 不求能够成为一个众多人维护的开源项目(不过源代码是开放的,只是没有太多精力来管理一个项目). 只是我一个在学习过程中的一个简单的项目.同时我在编写的过程中也希望能够多和大家交流, 把我的心得与大家分享, 也希望大家能够为我的学习或者项目提出一些意见. 本引擎虽然不算一个很易用的引擎, 不过也会实现目前流行的一些技术.
选择WuguiEngine作为本引擎的名字主要是有两个原因,第一是我的外号叫乌龟 为什么不叫TortoiseEngine呢,我认为Wugui看起来更有意思一点.第二是由于本引擎设计相对简陋, 运气起来的速度肯定不快,像乌龟一样. 这点就希望大家不要嘲笑了 :-D
引擎的特征:
本引擎主要具备的内容有:
1) 完整的场景管理系统(目前实现了线性查找,最简单的,之后会实现一个八叉树)
2) 一套可扩展的游戏主逻辑系统(目前完成了部分,实现了一些简单的Demo)
3) 一套不算很复杂,但是比较方便的输入系统(目前完成了部分)
4) 一套可扩展, 使用起来也相对简单的Shader系统(目前完成了部分, 我准备将图像的渲染做成全Shader方式, 放弃固定管线的内容)
5) 一套可以进行资源动态加载的资源管理系统(目前还没有实现)
6) 一套方便定位文件, 读取文件的流系统与文件系统.(目前还没有实现)
7) 重新封装D3D里面的部分类,使之使用起来更简单(目前实现了部分,比如Mesh, Texture等等)
8) 使用命名空间进行代码的管理, 从设计的角度上来说, 并没有使用目前很流行的接口与实现相分离的做法, 主要是我比较懒(-_-)
9) 没有设计API抽象层, 主要是本项目主要是学习为主,不想画过多时间在抽象层这类的代码上
本引擎准备进行的时间:
从我个人的打算上来讲(下半年就要开始找工作了), 不过大四也非常的清闲, 我大概会花几个月的空闲时间在这上面, 填补一下这相对清闲的时间,并且也为找工作做一些准备.
本引擎目前的进展:
前面讲内容的时候已经提到了一些目前的进展, 之前我多半写的是c#, c++只是一点皮毛, 从八月初才重新进行规划学习, 目前代码在3500行左右(算上空行和注释). 代码量不多, 不过这样也挺方便了解这个引擎的 :-D
参考资料:(目前的)
1) xt同学的引擎(这个不是开源的,就不细说了)
2) irrilicht引擎, 主要参考了一些命名和结构的组织
3) <3D游戏引擎设计 实时计算机图形学的应用方法> 这本书的内容相当不错,讲得比较系统, 但是英文看起来有点晕-_-
编缉推荐阅读以下文章
版权与免责声明
1、本站所发布的文章仅供技术交流参考,本站不主张将其做为决策的依据,浏览者可自愿选择采信与否,本站不对因采信这些信息所产生的任何问题负责。
2、本站部分文章来源于网络,其版权为原权利人所有。由于来源之故,有的文章未能获得作者姓名,署“未知”或“佚名”。对于这些文章,有知悉作者姓名的请告知本站,以便及时署名。如果作者要求删除,我们将予以删除。除此之外本站不再承担其它责任。
3、本站部分文章来源于本站原创,本站拥有所有权利。
4、如对本站发布的信息有异议,请联系我们,经本站确认后,将在三个工作日内做出修改或删除处理。
请参阅权责声明!