作者haryewkun (Har)
看板GameDesign
标题Re: [程式] Vista 下面的游戏开发平台?
时间Sat Jun 10 04:23:35 2006
※ 引述《littleshan (我要加入剑道社!)》之铭言:
: ※ 引述《haryewkun (Har)》之铭言:
: : 对於做 3D 引擎的人来说,重写应该是家常便饭。不重写,怎样加入对更新显示
: : 卡的支持及优化?而且像双核这样的技术,也是日新月异。平常应用程式可以不
: : 管,但是要搾出最佳效能的 3D 引擎,就不可能不重写了。像John Carmack也重
: : 写不止一次……
: 你写过 game engine 吗?
: 那种完整包含物理模拟的...
我所说的不是 game engine.
: 「重写」不是闹着玩的
: 程式愈大 所花时间的增长程度绝对超过线性
: 所投注的人力物力也不是每家公司都可以想重写就重写
: 因此新的 game engine 往往都是从旧的 engine 修改而来
: dual core 出来一段时间了
: 但由 dual core 得到明显效能增益的 game engine 依然不多
: 正是这个原因
: 把 single-threading 改写为 multi-threading 可是很麻烦地
: 就算是对新显示卡的支援
: 也不须要重写全部的程式
: 通常只要改一小部分就够了
这点我就不确定了。本来是 DirectX 8.1,现在要支援 DirectX 10.0,需要
修改的地方多不多?
听 John Carmack 自己说的是,四年前写的 code,很多地方就已经落後了。
他说,3D 显示卡的进步很快,为了追求更好的效果,他有对每一个新的id项
目重写过渲染器的欲望。
http://www.programfan.com/article/showarticle.asp?id=2463
最终,渲染器是游戏程序员最受评判的地方。在这个行业,视觉上的华丽
非常重要,因此它为知道你正在做的买单。对于渲染器程序员,最坏的因素之
一就是3D 显卡工业界变化的速度。一天,你正在尝试使透明图像正确地工作;
第二天 nVidia 正在做顶点着色编程的展示。而且发展非常快,大致上,四年
以前为那个时代的 3D 显卡写的代码现在已经过时了,需要全部重写。 甚至
John Carmack 这样描述过,他知道四年以前为充分发挥那个时期显卡的性能所
写的不错的代码,如今很平凡 -- 因此他产生了为每个新的id项目完全重写渲
染器的欲望。Epic 的Tim
Sweeney赞同 -- 这里是去年他给我的评论:
我们已经足足花费了9个月时间来更换所有的渲染代码。最初的 Unreal 被
设计为软件渲染和後来扩展为硬件渲染。下一代引擎被设计为 GeForce 及更好
的图形显示卡,且多边形吞吐量是Unreal Tournament的100倍。
这需要全部替换渲染器。很幸运,该引擎模块化程度足够好,我们可以保
持引擎的其余部分—编辑器,物理学,人工智能,网络--不改动,尽管我们一
直在以许多方式改进这些部分。
--------------------------------------------------------------------
所以照他这样的说法,不是重写过整个 game engine,而是重写过整个3d engine,
: : 我认为游戏很难不跟着升级,原因有好几个。第一是Vista的用户权限有很多改变
: : ,第二是只在 Vista上面出现的DirectX,第三则是受托管架构,免除了记忆体泄
: : 露的问题……
: 写游戏不是写大学生的程式作业
: compiler 帮你管记忆体是件好事
: 但这当然要付出效能上的代价
: 在效能第一的游戏上并非全然是利大於弊
: 另外 你是不是以为 C++ 没办法帮你做记忆体管理?
: : 在Vista出现後,会有多少游戏转移到.NET平台,倒是会相当在意的部分……客观
: : 来说,用.NET的受托管架构写程式,比用C/C++语言写程式容易太多了。
: C++ 是很难学没错
: 但难学於它好不好用其实是两回事
所以,这个帖子的原点,就是想谈谈在 Vista 平台上面,什麽样的架构是最好的游戏
开发平台。现在重新以 Vista 为用户对象,架构一个新的3d引擎,游戏制作者会以什
麽为最佳开发方案?
其实在这里我已经假设了一个前提,就是会有人为 Vista 平台开发专用的游戏。如果
假设游戏制作商拒绝证移到 Vista 上面,那麽就没有讨论的意义了。但是因为
DirectX 10 只出现在 Vista 上面,那麽除非不考虑支援,否则必定要为 Vista 平台
开发游戏。一旦要开发,就必须在 Managed DirectX 或者 Unmanaged DirectX 中间
作一个选择了。这也就是我要发问的本意了。
当然我们也可以说,Vista都还没有上市,谈这个有意思吗。虽然 Vista 最快也要明年
一月才上市,但是游戏的引擎的制作(不管是从新制作或者重写),都是一项庞大的工
程,两、三年的开发时间是家常便饭。
这可不是为了升级而升级哦。(笑)
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 218.111.10.148