» 您尚未登录:请 登录 | 注册 | 标签 | 帮助 | 小黑屋 |


发新话题
打印

[新闻] beyond3d 踢爆 GT5p 的 1080p 是假的!(由踢爆 Halo3 為 640p 的人證實)

我也来专家一把~

首先谁能解释为啥会知道GTHD画面是放大的?

第二个就是,谁说按照原分辨率渲染就是最好的?

用一个小于屏幕分辨率的RenderTarget是很正常的行为。看看目前爆出来的分辨率
1280*1080 1440*1080
我比较倾向于第一个分辨率,因为申请内存的时候,申请一块 1280*1280 的RenderTarget 比较快,刚好长宽比1:1~
下面浪费200像素,水平用满,输出的结果是 1280*1080,整张纹理的上下留一些黑边。横向扩展的时候
1920/1280 = 1.5
这样的话就是把水平2个像素扩展到3个像素上去……如果RSX的2X各项向异性过滤和 G8X 芯片一样是没有性能开销的话,就可以免费享用升采样,这样可以节省掉做 AA 的时间 ……

[ 本帖最后由 FXCarl 于 2007-10-21 21:31 编辑 ]


TOP

NND……回了这贴后,貌似这贴又被我毁了?

[ 本帖最后由 FXCarl 于 2007-10-21 19:26 编辑 ]



TOP

“您太认真了, 而且有一些概念模糊 or 错误。不过耐心是可嘉的。”

我的确在很多地方都一笔带过了,而且细节上也许是有偏差的(HDR AA 算是一个典型,因为刻意忽略向前渲染了?),欢迎指正~
说的太笼统了错了都不明白哪里有问题

顺便带一句,有人对 GT 这次的真正有意思的地方之一,车身的 BRDF 有兴趣么?

[ 本帖最后由 FXCarl 于 2007-10-21 21:27 编辑 ]


TOP

我手上有篇关于 车漆的 BRDF 论文,但是速度上虽不必离线,但也不能实时……
这个Project
http://www.mpi-inf.mpg.de/~guenther/carpaint/index.html

从各种资料来看,GTHD(实际试玩过)里面,车辆只能说有可能用了某种 BRDF 函数的简化版……首先,GT的所有车辆的表面材质,只有极少的及格角度会让你觉得用传统的光照模型可以调的出来,绝大多数情况,那种光照的感觉是弄不出来的。
盯住车身上一个地方仔细看,会发现其在光线不同角度下,反射方式是不一样的。特别是599用那种金属蓝的时候。
还有一个地方的有力证明是目前新GTR的那个遮挡布……可以感觉的出来,那个遮挡布的反射模型和车身是不一样的,这种区别感觉上不仅仅是个什么Bilnn调调参数那么简单。

不过说回来,一些单色的车看上去挺糙的……没准也可能只是个DoubleLayer……也就是所谓的ClearCoat,ATI曾经演示过的那台法拉利F50的算法~

----------------------

论文上,不同的油漆是要采集公式参数的……换句话说,如果GT5用的是某种BRDF模型的话,采集参数也是不必可少的步骤…………除非美术愿意在那些个数值里打滚,一点一点试

[ 本帖最后由 FXCarl 于 2007-10-21 22:08 编辑 ]

TOP

实际上,作为一个GTFans,但是同时也作为一个游戏开发人员,会知道。有时候凭爱是解决不了问题的~

譬如说一个经典的问题,单车 20W 面,16台车同屏。一个多么华丽的数字,但是稍微计算就会出问题
200,000 * 16 = 320W 顶点
1920*1080 的屏幕分辨率是 207 W 像素 ……

别急,我不是批判三角形比像素还多的……是另外一个问题,RSX有多少性能。
320W 个顶点,按照GT的基本需要——要在世界空间算算高光,环境映射的先决条件:把各个向量都变换到世界空间去~30个GPU周期是眨眼的事(一般在FXComposer里实现一套必须的算法大致需要35个Cycle)
秒间需要的处理能力是, 3.2M * 30 * 60fps 轻松得到 5760M 这个数值

等等……RSX的主频是 550MHZ ,顶点管线 8条 …… 貌似最大执行能力只有 4400M ……若真是20W面16车同屏,PS3在VS就已经崩掉了~

注意哦,这里已经为裁剪让步了,因为毕竟还有场景没有计算进去……加上去数值不会比这个差距多少的。这个亏空可是高达1G~满足这个条件得把 RSX 超频到 700Mhz ……

而且这还是个极为理想的数值。毕竟作为完整游戏,应该还需要考虑一下譬如阴影生成时消耗的额外开销……

-------------------------------------------------------------------------------------------
按照 Nvidia 自己的 Performance 分析工具显示,35个顶点周期下,7800GTX 的顶点处理能力是秒间 100M 左右(即60fps帧内150W+多边形),这个数值已经很高了……因为有兴趣的人可以查阅一下 虚幻3 引擎的资料,虚幻3的最佳工作状态是 20名 角色以下,同屏峰值 150W 面以下 …… 否则后果自负 ……可以参考这个地址最下面 Epic 的自白

http://www.unrealtechnology.com/html/technology/ue30.shtml

[ 本帖最后由 FXCarl 于 2007-10-21 22:55 编辑 ]
本帖最近评分记录
  • Jonsoncao 发贴积分 +50 精品文章 2007-10-22 01:34

TOP

LS 谢谢,我正好有一项工作内容就是写 Shader  ……实践经验表明在游戏里真正实用的渲染算法至少在工具评估结果上再留 20% 的闲置出去。以防止峰值情况。

GPU 从来都是比预想的更慢,一般来说因为缓冲命中等问题性能会比用我前面的简单估算还要慢上一些 ……面对PS3的性能,单车纯外壳(不含内饰)的面数不超过5W才是一个比较合理的数值。这样就算使用16位的顶点缓冲也没有问题。

实际上,您也不得不承认,对于一个车辆来说,没有什么好的优化方式。Lod 可能是唯一可用的~但仍然会造成车辆体积的剧烈变化,且极为不易保持车身表面的平滑性。

为了达到GTHD这样的平滑车身,可能标准情况下都需要使用16位的法线贴图(RGBA两两合并)来保证环境映射不会被错误扭曲

----------------------------------------------

分割线下说一些小人之语,
Google过LS大名,也算有所建树之人,既然胸有成竹,为啥保守呢。如果有什么错误,直接指正提出正确公式,也算是行善一件啊~

[ 本帖最后由 FXCarl 于 2007-10-21 23:52 编辑 ]

TOP

这样讨论才有意思
1.MSAA的算法的确可能是暴力的,但是貌似NV的人说不是暴力的。

MSAA的方式是从周围像素取色彩混合(CSAA还会做加权)在一个多边形内部,光栅化没有疑义的时候,就没有做AA必要,否则会模糊画面。
2. 这个问题很微妙了,MSAA和HDR本身不会存在冲突,这个从理论上来说就是成立的。因为HDR不过是个概念,时髦的实现是用RGBE格式ToneMapping得到最终结果。这个地方我承认我前面就说错了……

3.加速度图……这个东西我说的很模糊,实际上有些地方不翻书想不起来,按照大致原理随便说的,开销是差不多的。具体的模样可以查看KillZone2的PPT,算法Capcom的DX10 LP 的相关PPT里似乎说过。

4.想让计算有意义其实不难,但是数字会更恐怖的。DepthPass可以用MRT,不需要额外顶点计算。Shadow算法貌似是ShadowMap,要把所有多边形都要变换到灯的视空间去,翻一倍开销
最后计算一下优化问题,目前的裁剪算法都是针对场景,对车辆这种东西都没有什么用……而且前提还是裁剪是在CPU做。别说用GPU的遮挡查询,要是那样,不还是要GPU把顶点操作一遍?
所以我也提到了,优化的话,貌似也只有LOD一条路,稍微远点就把车内全部删除掉。可要是这样说的话,全车全20W面不也是空话了么。

在数学里,推翻一个定理的做法只需要一个反例。我只要可以提出一种情况超过了RSX的处理能力,是不是应该就可以证明不可能有 20W面16车 同屏了呢?

16BitNormalMap的用处请查阅ATi的Carpaint技术文献,法线图只是法线扰动。不仅可以制造细节,也可以平滑表面,不同用法而已。因为车辆表面可能是高次曲面,直接用法线线性平滑产生的表面是肯定体积走样的,需要用法线图来纠正。如果用一般每轴 8bit 整数的法线,还外加压缩,最小法线偏角接近1度……是不能满足高光滑度表面的需要的……我没有做过亲身实验(等用空补上),但是我觉得ATi的说法是有道理的。

[ 本帖最后由 FXCarl 于 2007-10-22 12:50 编辑 ]

TOP

回PHT
MSAA 是我错了,的确是内部像素,概念和延迟渲染得手动AA混淆了,该抽~
RGBE虽然稍微麻烦……但方便存储开销,UE也好这口的……最近自己用的时候也没有觉得太不方便,嘿嘿我挺RGBE
貌似经验上是只有指定Surface为 D24S8 的时候,深度渲染才会快起来,如果用 R32F 貌似都没便宜占……不过浮点没有研究过了
NormalMap的精度问题还是看需要决定,这个认同。不过我始终觉得光用模型和自身的顶点内部插值想要体现正确的车辆表面比较悬……

最后说到LOD …… 还是老话,这样一来的话,20W * 16车 进渲染管线 还是不成立的。和GPU结构没有太大关系的说……因为RSX又不承担拆分和细分网格的任务……玩顶点流,在PS3上只能靠Cell

回 zhangjingy
没有听说 PS3 的 Cell 里有向量机,因此变换一个顶点的开销应该是 16 次计算……概念值(不想查,PHT大人补上,谢谢)以Cell的计算能力,300W 顶点 ……
有可能把一部分拆出来给Cell做是有可能的……不过,估计还是抗不住,不过我没碰过Cell,不知道有多神~

话说,我觉得分辨率降低不是什么问题……我只是觉得 20W 肯定不可能在赛道上看到,顶多选车……以前GT4告诉我,选车和游戏里开的,那绝对是两台车

[ 本帖最后由 FXCarl 于 2007-10-22 16:43 编辑 ]

TOP

回 hourousha ~
我不是研究硬件的,不太清楚所谓禁用 ColorWrite …… 貌似按照DX9的传统渲染流程里,是没有办法先计算顶点深度然后跳过显卡的光栅化就可以取出数据的。此外就是从显卡取回数据也还是要浪费额外的时间(特别PS3的RSX和Cell还不共用存储器)
DX10则要走GS。反正一套顶点变换是少不了。一般来说为了减少顶点操作负担,优化还是在批的组织上~而这个工作,GPU也帮不上太大忙,因为GPU根本不“懂得”你的场景结构

回PHT
UE3引擎的游戏,Shader大都是公开的未编译版本(UT3,Vegas都是),RGBE的编码和解码函数清晰可见。当然,我也可以说这是为了以后留有余量……
还有补充一下,大大不小心说了一句话不够严谨……法线贴图再哪个空间其实没有关系,关键是的,它偏移了纹素所覆盖面积中的表面法线方向。在切空间意味着是沿着切线和副法线的坐标系偏移,而在物体空间,是按照物体的上下左右偏移罢了。

不过咱们都跑题了~这帖子不适合讨论了,留言交换下联络~
偶的MSN和Gtalk以及Email 都是 fxcarlcn@gmail.com

TOP

好了,本帖的结论可以定下了。

分辨率问题,不是问题

面数问题,有可能含水……

TOP

回 zhangjingy

给出的龙穴介绍,封面就写的清楚了~同屏80W+多边形~

在此基础上再裁掉60%还是裁完以后80W就不知道了……不过80W这个数值本身就不少了~

网页链接日语的,而且没有技术细节,Zip正在下,继续回在这个帖子里~

[ 本帖最后由 FXCarl 于 2007-10-22 19:56 编辑 ]

TOP

压缩包是视频……同时播放千人的骨骼动画……

幻灯片我觉得也很说明问题了~不管怎么说吧,我不是神仙,高人们有的是。我的拙劣观点是~

PS3游戏,同屏的多边形的数量,也就是100W吧~Cell的作用上,真是不熟悉Cell,光看外面数据什么也不说明……

TOP

这贴完结了……

有很多事情,都已经被 DX 和 GL 封装了。关心下面的体系结构不是不想,而是没时间……
现在主要还是优先保证算法可以正确实施。实话说,现在真正动手做东西的人。还真是没时间去多想之外的事情。

TOP

所谓言多必失,很多事情在纸面没法说的清楚,留下漏洞也不好交待……对不起广大读者的

我那不负责任的100W吐槽,其他几位高人也没有在这个问题上提出截然不同的观点。

100W 同屏只是我的片面之言,什么都不代表的。大可以当笑话过去。做个不恰当的对比——3DMark05/06都有个功能,就是显示每桢渲染的多边形数量。3DMark06的多边形桢平均也还是在50W以下的。

另外,值得关注特别是PHT也提到了的,关于RSX的数据消化能力的问题。

TOP

发新话题
     
官方公众号及微博