首页 | 编程语言 | 网站建设 | 游戏天堂 | 冲浪宝典 | 网络安全 | 操作系统 | 软件时空 | 硬件指南 | 病毒相关 | IT 认证
软讯网络 > 游戏天堂 > 游戏开发 > 关于很多朋友找我要源代码的事-以及我的建议
【标  题】:关于很多朋友找我要源代码的事-以及我的建议
【关键字】:
【来  源】:http://blog.csdn.net/xjyhust/archive/2007/04/15/1565172.aspx

关于很多朋友找我要源代码的事-以及我的建议

文章出处:

http://blog.csdn.net/xjyhust by Render Hacker ,E-mail: xjyhust@gmail.com

小弟在大约一年以前开始写了一个简单的游戏引擎的框架,开始的时候经验不足,仿照zfx和ogre写,东拼西凑的搞了万余行,写完以后不满意,故理清思路,从新开始。

在刚开始尝试写引擎的时候,有很多的困难,好在有很多的朋友,包括csdn和gameres上的网友,都给我了一些宝贵的意见;以前,一直追求华丽的特效,希望写出来的引擎,能够体现业界最新的发展;但是后来才明白,游戏引擎中,最重要的不是特效,而是最基本的算法,管理等等。

所以,以前的代码,虽然我还是上传到了gameres上,估计粗略看过的朋友都很少,多半是瞥了几眼,然后就delete了。的确,那个代码没有太多的价值,也没有太多的学习价值。所以,我觉得,就算是水平比我还菜的初学者,若是想了解游戏引擎,或是更有想尝试开发游戏引擎的话,最好还是以正规的优秀开源引擎为学习材料。这里,我谈一下我的建议和感受:

有这样几个引擎是比较好的:

Ogre,如果对于c++,stl有一定的基础,最好还有一点oo及设计模式的概念,可以学习ogre。这是我平时查阅最多的代码之一,其代码可读性非常好,模块也分得比较细。缺点就是有点滥用设计模式和oo,以至很多不必要的代码,(不必要的接口,不必要的中间类),可能会给初学者带来麻烦,而且,会给初学者带来误会,过度追求游戏引擎的华丽的框架。但是整体来说,这是最好的学习引擎的代码。

Nebula Device 2,商业品质的代码,风格很统一,注释也十分详尽,很少有多余的代码,也是很好的引擎,个人认为渲染方面可能要强与Ogre(但是Ogre更新非常频繁,以后的情况可能会不一样),但是引擎使用起来没有ogre方便。但是,不妨碍我们学习其中的技术。

IrrLicht,不错的引擎,而且,在0.XX版的时候,就已经非常受欢迎,现在已经1.XX了,8)。没有仔细看过,很多人也推荐这个,应该不错(只是其中很多没有必要的com,个人觉得)。

接下来几个,可能不太适合学习,可能比较适合学习其中的部分模块。

Quake3,是游戏引擎中的极端,用纯c写的,比较难以分清模块,比较可以看一下的是关于bsp的部分,网上很多研究quake3中bsp算法的文章,可以帮助你阅读这部分的代码。其他的部分,就没有太多的价值了,除非你是一个hard-core c programmer,坚决不用c++来开发,;)。

Half life2,泄漏的代码,被多少人当成宝贝抢着研究。其实,其代码质量真的是很差,命名不统一,风格不统一,代码严重重复,绝对是没有严格管理的结果!也许是我的水平问题,其中可以学到的东西比较少,可能有用一点的是,可以弄清楚里面的游戏资源的格式(比如hdl 2.0,纹理格式),至于其中的bsp,和quake3中的大同小异(有些代码都是直接拷贝的)。很难想象这样的代码最后可以很好的结合在一起。。。

Torque,我现在手上唯一的商业引擎的代码,不过有点旧。没怎么仔细看,也是风格非常奇怪的代码(可能是考虑移植性问题,很多地方本来是要用class的,却用struct代替)。其中的地形,脚本,shader部分,应该优化得比较好;场景管理的部分,也还不错。(ps,在电驴上有下载,请在下载后24小时内,自觉从硬盘删除,并且在看后24小时内,自觉遗忘 :) )

erp:【上一篇】
这年头什么都有,JS写的网络游戏~:【下一篇】
【相关文章】
没有相关文章
【随机文章】
  • mouse_event详解[转载]
  • Java I/O中的对象序列化
  • 在Mascot Capsule v3中使用多个纹理
  • 分享 RPM 软件命令的使用方法! (资料来自网络)
  • 用session做客户验证时的注意事项
  • JBoss EJB3(Entity Beans)備忘記
  • DataGridView数据邦定方式的改变
  • 关于flash2004中的Transition类
  • Linux下硬盘分区详解
  • 如何将真彩色图转换为各种灰度图
  • 【相关评论】
    没有相关评论
    【发表评论】
    姓名:
    邮件:
    随机码*
    评论*
          
    |  首 页  |  版权声明  |  联系我们   |  网站地图  |
    CopyRight © 2004-2007 软讯网络 All Rigths Reserved.