作者pponywong (pony)
看板GameDesign
标题Re: [请益] 游戏有哪些研究僧能发挥的题材吗?
时间Fri Feb 6 22:08:54 2009
原文恕删
我也来说一下好了
因为我也是在做3d偏游戏方面的
要学做游戏的话
最难的技术当然是 3d engine
主要是渲染器(renderer) 跟 level editor 的部分
当然物里引擎也很难
我先说图形部分好了
如果是资工系的
可以去 trace code
我硕一的时候是选择 ogre 看了
那时觉得他的 c++ inheritance, polymorphism 用的很好
然後 design pattern 也用了很多
但是後来学久了
却觉得ogre不好
因为 design pattern 用太多了
个人认为已经到了 anti-pattern 的地步
有学过的人应该知道 ogre 用了一堆 singleton manager
觉得很讨厌
所以要学游戏设计...............
很重要的一点就是请从商业引擎着手
建议你看 quake3 的程式码
可以从 bspc (bsp tree compiler) 开始看
可以知道一般 FPS 地图的构成
再看 quake3 的 renderer (opengl 写的)
因为 quake3 renderer 是基於 bsp 场景做渲染的
所以会有一堆 vis, pvs, portal 之类的
要花不少时间
这边有一个大陆人的 blog
里面有一些关於 bsp 的东西, 可以看
http://www.cnblogs.com/dreams/archive/2007/03/25/687267.html
还有之前 Half-life2 被骇客泄漏的程式码
有方法记得入手一下, 里面可以看的东西更多
像是在 bsp 里面加上 displacement map
跟 lighting (hl2 是用 radiosity)
gdc 有一些 valve 的 paper 有提到 displacement normal mapping
就是利用 disp map 跟 radiosity 技术
不过 valve 在 level editor 的基本技术还是使用 quake3 的 bsp
另外 hl2 源码里面还有 havok 物理引擎的程式码
要学物理引擎也可以 trace 看看
想要再多学一点的话
就练练 opengl 跟 directx
不要有那种选一种学就好的想法, 请两者都学
还有之前 ps3 sdk 也有秘密流出
里面有不少不错的 example 跟 sce confidential 的东西
有方法也拿一份来 trace code
如果你的兴趣只是做 3d 而不是游戏的话
就学一下 global illumination 的技术吧
像是 radiosity 跟微软推的 PRT
还有 ray tracing
都是不错的论文题目.....
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.114.207.94
※ 编辑: pponywong 来自: 140.114.207.94 (02/06 22:46)
1F:推 Bencrie:实在是不怎麽喜欢D3D 囧rz 02/06 23:46
2F:推 AlvinX:sigletion是很基本的pattern, 我觉得蛮好用的 02/09 00:23
3F:→ AlvinX:我觉得Ogre能发展的快, 主要归功於他用了很多pattern 02/09 00:24
4F:推 GALINE:我没玩过Ogre,不过用很多pattern不一定是好事[苦笑] 02/09 11:18
5F:→ jugu:别人写singleton的东西给你用时,有时候会是件很恐怖的事:( 02/10 02:29