最新评论

GameRambler 2010-12-19 20:56
ryzom的这个设计方式很值得学习。
egmkang 2010-09-02 22:14
不错 准备看一下
G_cofa 2009-12-09 22:09
UP!
小P 2009-12-07 09:20
这个编辑器是使用Irrlicht的,但是我们现在已经放弃使用Irrlicht了,尽管对这个引擎我们非常熟悉。由于我们的开发策略和游戏系统架构还算科学,因此编辑器的思路和系统的其他模块在仅仅替换图形库的情况下受到的影响不大。 Irrlicht这个引擎做Demo和一般研究还行,但是做商业项目,很多方面还不足,官方的开发策略非常保守,更新也慢,社区也不是很活跃,这非常不利于引擎本身的发展和应用上遇到问题的解决。 使用开源引擎,不可避免的是你总得开发编辑器,Irrlicht第三方的开源编辑器很少,官方编辑器又不提供源代码且功能很差。我们开发到中期,发觉要为Irrlicht引擎本身的不足做很多它应该做的工作,比如前两年的版本Irrlicht甚至没有一个资源管理器,现在的版本在粒子系统上完成度仍然相当低,不断遇到这种情况使得我们只有放弃在Irrlicht上面开发,转而更成熟的引擎。
fill 2009-12-05 16:08
这是用的irrlicht吧,这个引擎博主觉得怎么样?
小P 2009-11-29 21:13
主要原因还是使用Ogre,Ogitor作为它一个比较好的编辑器已经开发了近一年时间了。Ogitor在SourceForge上活跃率超过90%,更新比较频繁,因此作为处于开发初期的编辑器来说,参考Ogitor架构不是很复杂,易于重构。 5月份之前Ogitor采用wxWidget制作UI,早期更是采用MFC,直到5月份Qt开源则转为Qt作为界面库,可以看出Ogitor在编辑器内核架构上是很好的抽象出来并且和界面分离开发的。另一方面,Ogitor架构从一开始就采用插件式开发,集成度和扩展性都相当好。
neodoxy 2009-11-28 12:11
Ogitor改的啊,特点在哪里?
winfree 2009-09-23 15:43
很有同感! 我也用wx,不过最近也看看Qt了
小P 2009-09-22 15:59
这个界面是基于WxWidget的
edison1024 2009-09-22 13:25
想问一下你这个编辑器的界面是QT还是MFC的?
狂之想 2009-09-10 10:06
[quote]Zeb:XiaoP,你到处泄露你们的机密.赤裸裸的炫耀.[/quote] 呵呵,授人以知识总是好的!
小P 2009-08-12 09:10
网上可以访问一下集智论坛这类国内做得比较好的论坛,国外的资料就比较多了
ixnehc 2009-08-04 12:08
我对这个也挺有兴趣,博主有没有这方面的资料啊,比如网络链接什么的。
Zeb 2009-07-31 12:41
XiaoP,你到处泄露你们的机密.赤裸裸的炫耀.
小P 2009-06-25 11:04
@charlie_craft
你好,非常高兴憧憬于游戏行业,相信你对游戏开发有着无比的兴趣。对于现代游戏,从学习或者入门来说,有很多方面需要学习,对某些游戏引擎的学习和理解则是其中非常重要的一环。

可以说,无论国外还是国内,无论是进修课程还是自我摸索,熟悉进而使用一些引擎,亦或自己开发一个引擎的小框架都早已成了一个必然的入门过程,而这个过程多数情况是学习中最侧重的。但是这个过程无论再有趣再完美也不要去形成一个习惯,很多人会舍不得丢弃自己的代码,很多人会因为入门过程而排斥引擎内核之外或之内的东西,很多人会习惯于万事自己开发。进入各种游戏公司后你就会发现,尽管它们对待游戏引擎的态度各不相同,但任何成熟的团队基本上都会采用成熟的现成引擎。从国外的情况看,成熟3DMMO引擎从头开发的工作量已经从前几年的两三年发展到现在的5至7年。以国内的情况来看,大多数想靠某款游戏赚钱的公司用这么长时间去开发一款引擎往往就是得不偿失。所以我说,国内团队多数应该采用现成的引擎,要么使用已经完善并成功的自主开发引擎,要么使用熟悉的现成的商业引擎,要么扩展熟悉的开源引擎,没有任何必要去自己从头开发。

进而我说为什么大多数工作量反而会花在工具上来。使用任何引擎开发游戏,科学的流程必然会有大量的工具配合,这些工具多数是围绕团队选用的引擎制作的。国内目前开发游戏特别是网游,都需要大量针对游戏内容而定制的工具。这样一个最大的矛盾就出现了。

商业引擎配有大量工具,有些还相当不错,但是要熟悉和使用它们你就得花大量时间,目前在国内时间就等于风险!如果说事在人为,这不是问题,那好我们抛两个假设再看,一是假设你已经熟练使用该引擎及其工具了,二是我们假设你使用该款引擎做出来的游戏也在市场上成功了。那么有经验的人一定知道,国内网络游戏内容相当丰富,制作过程中就需要大批量配置游戏内容,国内市场风云变幻,这些内容往往还要求你能在短时间内大批量修改。多数采用商业引擎的公司你实际上是在它的制作环境、目标与你面临的实际游戏内容的差异中不断挣扎(最差情况是你和策划在Excel中挣扎,呵呵)。这个挣扎时间是相当长的。

开源引擎的好处是你可以扩展到与你面临游戏内容最配合的程度,但最大的缺点就是——没有工具。因此自己开发工具就成了重中之重。

说了这么多,其实就明确一个结果,引擎核心可能是学习中的侧重点,在工作中侧重点很大可能就是各种工具了,工具的范畴很广,重某种意义上来说,工具也就是引擎的扩展,就是引擎和项目的接口!
charlie_craft 2009-06-24 15:45
博主好,本人还是学生,以后想从事游戏行业,前段时间将大部分精力放在了引擎的开发上,阅读了一些开源引擎的代码,还仿照搭了一个引擎的小框架,因为我觉得这些才是游戏开发最核心的部分,按照博主的意思,是不是应该侧重工具的开发呢?
秒大刀 2009-06-15 18:40
@小P
"很多技术一定要信手拈来,其他原因博客上也表露无遗,正是在风险和重复劳动的平衡中你才能选择好一个稳重的方向。"
非常深刻!
现在重复开发现象已经非常让人困惑了
哈哈什么 2009-06-02 20:34
牛人呀!我们只有仰慕的份!
小P 2009-06-02 09:58
@effulgent
每个项目每个团队都有自己的特点和条件,重复造轮的警示我一直放在第一条。
我说过这个项目到现在这个情况是不到两个月with 1.5person,有经验的开发人员应该能估算出,这个项目中95%的技术应该不是从scratch中创作出来。引擎图形核心正是目前流行的开源引擎,这个项目的评估正是和各种商业引擎以及公司内部各个团队已有引擎的对比下产生。我表述过很多技术一定要信手拈来,其他原因博客上也表露无遗,正是在风险和重复劳动的平衡中你才能选择好一个稳重的方向。
effulgent 2009-06-02 09:03
中国的开发者永远都是做重复和相同的东西,看着同行们的贴图,看着我以前做的项目,都是低级的重复劳动,技术工作者迷失在技术的沟壑里,看不清游戏本质。
magemaster 2009-06-01 17:04
商业3D引擎和开源引擎的最大区别其实不在于性能效果,而是在服务项目的配套工具和开发流程(层面)上。我认为一款“有作为”的商业引擎在工具上的开发量不低于整个引擎项目的2/3。
\\不错认同
timesking 2009-06-01 13:35
"我认为一款“有作为”的商业引擎在工具上的开发量不低于整个引擎项目的2/3"
做为游戏开发多年的开发者,这句话,我也深有体会。关注博主的文章一段时间了,看到博主的编辑器demo,感觉不错,甚是佩服。
繁星 2008-10-28 21:33
WorldWind是开源的,你可以下个源码学学,不过是用C#实现的
小P 2008-10-28 09:48
@seesea
支持!我也肯定会在不久就转向SM3的。WorldWind公布了它的实现细节了吗?这是个很酷的软件啊。

城市建模和渲染是个很大的方向,我最希望的是能构造参数化的城市,并且支持实时城市建模的算法,可惜还没有看到这种算法。
seesea 2008-10-27 21:46
恩,的确需要显卡支持SM3.0. 不过现在现在市面上一般流行的显卡都早已支持SM3.0了,完全GPU编程是大势所趋的事情了。我觉得这种地形和纹理使用过程生成在DX10中应该比较容易实现点,因为可以使用GS了。

目前,我在做一个数字地球,不过是基于WorldWind的。用的是DX固定管线渲染,地形是使用的MipLOD。随着我加入的东西越来越多,速度现在是越来越慢了。所以我打算全面使用GPU可编程管线做一个单机版的星球引擎。(目前进度还只是在停留在3D UI界面控件的开发上)。

关于“在星球上建立大规模城市”这个是我看了GPU GEMS2中关于“几何体实例技术”这篇文章所萌发的想法。这篇文章主要介绍的只是渲染技术。关于城市建模我还没有更好的idea。

我已经开通了BLOG,只是上面什么都没有。想写点什么,但好像没什么完整的东西可以写上去,工作很多只进行了一半或更少。关于项目介绍,目前由于工作原因还只能保密(属于商业机密吧......哈哈)。
小P 2008-10-27 13:25
你说的是不是基于Malte Clasen的“Terrain Rendering using Spherical Clipmaps”这篇论文啊?这篇论文很棒,能充分利用GPU的功能,但需要shader 3以上的支持吧。另外,你的DEM数据是静态的吧,我基于网络游戏传输考虑,高程数据是及时生成的,同时要求较高精度。在网络上传输一颗星球就几个(可变)参数,O'Neil的代码中对此已经有所支持,因此我就直接采用他的代码了,他是OpenGL写的,移植到DX后我做了进一步的优化,fps在可以容忍范围内。目前我也没有为性能考虑,我决定在几个版本之后再转回来重构这部分,可能会考虑更好的算法(主要考虑用较新的GPU功能来做)。

你说的“在星球上建立大规模城市”是仅用于渲染还是建模方面呢?你的项目有介绍性的链接可以看看吗?我非常感兴趣。
seesea 2008-10-26 15:21
我近来也打算来做一个像这样的星球引擎。刚开始打算使用这种方法,考虑再三后打算用Spherical ClipMaps来做,充分利用GPU的性能。我看了一下Sean O'Neil所实现的星球引擎源码,在我的机器编译后运行帧率并不高(XP Sp2, Intel Core2 Duo T7250 2.00GHZ, 2GB内存,NVIDIA Quadro NVS 135M ,256MB性能接近8400GS),并没用突破100帧,并且它的引擎所使用球体构造方式不是经纬剖分式,而是六面体剖分式,这个好像都不适合用来搭建一个数字地球(经纬剖分式更利于纹理寻址和映射,同时影像和DEM数据能更好进行管理)。所以我不得不放弃六面体的球体构造方式取而代之的是使用pherical ClipMaps,这样很多工作就可以从CPU转到GPU上,为以后在星球上建立大规模城市提供了余地。不过如何在六面体剖分球体上进行矩形地球影像和高度图的映射一直是我考虑的问题,到现在也没找到很好的方法。
小P 2008-09-16 09:18
孢子一发布我就在打,并且从前年就开始关注,它的自定义形态(状)和动画、游戏尺度和世界观非常有特色,星球也是随机生成的模型。
但从AI方面讲,孢子并不是真正的进化,这点我是希望去做到的(虽然从其04年的大量演讲中可以看到孢子在CA方面的很多概念,但实际游戏中似乎没有这方面的影子)。另外孢子星球的程度是出于夸张和拟人化考虑的,我希望能做到拟真化,规模比这个更大。
另一方面,我主要是从MMO的角度考虑的,孢子这点还不太一样
liumingod 2008-09-16 01:41
请参考游戏孢子
小P 2008-09-04 14:28
呵呵不是,我是做游戏的,希望能把这些用于网络游戏
konyel 2008-09-04 14:09
楼主在天文研究机构吗?
小P 2008-09-04 10:52
如果恒星周围没有大量气体,确实是没有散射效果。但我想针对恒星情况,做一个大气的效果来模糊恒星边缘,以免在近距离观察恒星仅仅是个圆盘,尽量与人眼看到的一致。另外比如一般的气态恒星,周围也有大量气体扰动的吧。
另外,你说到的星系充满大量气体,我将在未来的版本专门来完成这个,星系由于星际尘埃或者气体,将会呈现漂亮的色彩斑斓的背景,特别是星云。当然我仍然采用过程生成,到时候将不是简单的天空盒,你可以直接在里面漫游。
李林昆 2008-09-04 10:28
从真空中看恒星不应该有光晕,除非恒星周围相当大尺度空间充满大量气体,但这种情况一般只存在于星系,不存在于恒星,不知道我说的对不对?
小 P 2008-08-04 11:32
是小P哈
xiao_p 2008-08-04 11:26
楼主也叫彭晓吗? !!!
同山 2008-04-11 10:20
虽然没看懂,但是觉得很有意思,是个很好的研究方向
除了可以应用于游戏,也可以运用于影视特效,制作群集动画,效果也肯定很炫的
零下29.C 2008-01-26 18:21
--引用--------------------------------------------------
闪亮男孩: 大大的好啊

--------------------------------------------------------
航天奇侠 2007-08-10 00:14
你很强,欢迎加入。

群: 7343375
入党申请书 2007-08-05 15:36
人们渴望交流,思想越发地需要一个自由的空间。
支持一下~~~
xiaop 2007-07-23 09:14
@GPGPU
行啊,我已经有几年没有接触这方面的东西了,不过对此我仍然很感兴趣^-^
GPGPU 2007-07-20 18:07
你水平有几高? 可不可以讨论几个问题关于GPGPU的?
小P 2006-04-18 12:53
我也是在接触了网络编程方面后,觉得能综合机器之间的人的操作非常有趣,所以才试着学习Direct Draw怎么画圈,然后尝试做类似于网络图形交互的东西。
那你现在做游戏吗?我是学通信的,同学中很少做这个,但很多人都羡慕我能做至少是自己喜欢的工作。
smalldust 2006-04-18 12:02
我在98,99年的时候也曾经有过类似的想法——当时就想,做一个图形化的MUD,肯定会很赚钱!
其实图形编程方面并不太困难(我当时对于DirectX、一些图形库等略知一二),对于我来说最难的就是网络编程部分。而且做一个游戏不是一个人的事情,所以作为学生的我只能幻想幻想罢了。