※ 引述《xoxxo (xoxxo)》之铭言:
: 不知道到哪问
: 来这边问问
: 如有违反板规请见谅
: 1.游戏设计要吃到压榨所有硬件效能 是不是很难?
: 有时候玩GAME 明明已经画质 或复杂度已经到极限
: CPU GPU却没有用到超过80%
萤幕有 FPS rate
你多 render 的画面超过这个值也没用
所以通常游戏引擎会做 vsync
真的要做到即时渲染 非常的难
Rendering equation 非常难算 需要花大量的时间
一般光源 就有 ambient specular diffuse 三种
早期的 OpenGL DirectX 可以简单的设定三种光源
但是画面很阳春
现在GPU 走 shader 考虑多重光源 计算量很大
所以都是用 deferred rendering
只要 render 两次 就可以 real time 计算多重光源
不过没办法处理透明物体跟 SSS (subsurface scattering 子表面散射)
所以很多引擎都还是用 precomputed light probe 来解决
就是在场景中 放入很多的探测点 利用蒙地卡罗乱数
来模拟该探测点 对于光的球谐函数 (spherical harmonic function)
计算好之后 储存成 lightmap 包在场景资料里面
http://www.valvesoftware.com/publications/2004/
GDC2004_Half-Life2_Shading.pdf
http://www.valvesoftware.com/publications/2006
/SIGGRAPH06_Course_ShadingInValvesSourceEngine_Slides.pdf
所以你看到的漂亮光源 都是先计算好的 lightmap
memory throughput 反而比 GPU 计算能力重要
基本上 现在游戏的画面 都是走两路
室外地形用的是 deferred rendering
建筑物 室内场景是用 precomputed lightmap
至于粒子系统要另外渲染 对 partical system 不熟...
valve 有很多不错的 paper, slide 可以看
http://www.valvesoftware.com/company/publications.html
: 2.跨平台对战 是不是不好设计
: 例如battle field starwars battle front
: ps4 ,pc 都是各打各
: 玩家无法串连一起玩
: 还是是因为销售政策考量?