A9VG电玩部落论坛

 找回密码
 注册
搜索
123
返回列表 发新帖
楼主: Mrgooch

是我的错觉吗?4HD画面比0好?

[复制链接]

精华
0
帖子
429
威望
0 点
积分
1008 点
种子
5 点
注册时间
2014-9-30
最后登录
2020-11-16
发表于 2019-5-14 16:03  ·  天津 | 显示全部楼层
乱兵刹神 发表于 2019-5-14 10:27
好厉害的讲解。。看来龙引擎真的是半吊子 需要改良的地方太多。。

另外我感觉见参的人物面部高光更严重  ...

见参是解释起来最麻烦的,翻了很多资料之后得出一些结论。

官方说见参使用的是顶点光照,然后说了由于顶点光照的缘故,在接收多个光源时会有法线信息显示不正确的情况。

然而在unity对于顶点光照的解释中有以下内容:
此着色器为顶点光照 (vertex-lit) 着色器,是最简单的着色器之一。照射它的所有光照在一个通道中被渲染并仅在顶点被计算。

由于是顶点光照,因此不会显示基于像素的任何渲染效果,如灯光 cookies、法线贴图或阴影。


也就是说,顶点光照本身并不支持法线贴图,但官***确提出了法线贴图并且游戏中也能看出效果,所以只能理解为这是世嘉自己的黑科技。

顶点光照本身使用很普遍,除了ps1和ps2时期基本都是,psp和手游上也基本都是顶点光照。

然而顶点光照本身是支持高光模式的,在ps2如龙1中,有一个战斗场景是在房间里,外面下雨打雷,打雷的时候桐生身上会有明显的高光。

然而见参中有不少地方角色面部的高光非常亮,高光区域也很大,因此可以得出结论,法线信息本身独立于顶点光照,更接近细节贴图的使用方法,而高光部分则无法读取法线信息,因此高光是完全根据模型本身绘制的,不包括方向和细节,因此材质的感觉更接近蜡像。

另外由于官方宣称法线无法接收多个光源,因此大部分时候角色身上只能接受一个光照,缺乏暗处的补光信息,导致角色的层次感下降,皮肤质感也受到影响。

但其实世嘉这个东西很黑科技的,如果给手机平台使用,那么就能以很低的耗能来实现大部分带有法线贴图的材质,因为法线贴图对于几年前的移动设备耗能还是很高的,因为有必须运行在逐像素渲染下的条件,逐像素光照的开销是顶点光照的3倍左右,所以ps3时代能以全分辨率1280x720运行的如龙系列只有如龙见参一款作品。

精华
0
帖子
429
威望
0 点
积分
1008 点
种子
5 点
注册时间
2014-9-30
最后登录
2020-11-16
发表于 2019-5-14 16:04  ·  天津 | 显示全部楼层
另外找到了关于顶点光照的另外一个描述:
逐顶点光照的计算量往往要小于逐像素光照 .

逐顶点光照依赖于线性插值来得到像素光照 , 当光照模型中有非线性的计算的时候 , 逐顶点光照就会出问题 , 例如计算高光反射 .

逐顶点光照会在渲染图元内部对顶点进行插值 , 渲染图元内部的颜色总是暗于顶点处的最高颜色 , 在某些情况下会产生明显的棱角现象 .

弑神者

旁门左道驱良币 城狐社鼠扭于前 不舞之鹤闭塞听积羽沉舟只等闲

精华
3
帖子
173299
威望
3 点
积分
184053 点
种子
2040 点
注册时间
2009-12-1
最后登录
2024-4-7
发表于 2019-5-14 17:03  ·  黑龙江 | 显示全部楼层
shtoi 发表于 2019-5-14 16:03
见参是解释起来最麻烦的,翻了很多资料之后得出一些结论。

官方说见参使用的是顶点光照,然后说了由于顶 ...

这么说见参试验打基础的成分很大 看来世嘉在PS3时期也是不断摸索 但PS4龙引擎却这么不成熟还连用好几代不可理解。。

精华
0
帖子
1165
威望
0 点
积分
1539 点
种子
384 点
注册时间
2009-4-20
最后登录
2024-4-26
发表于 2019-5-14 18:27  ·  未知 | 显示全部楼层
shtoi 发表于 2019-5-14 16:03
见参是解释起来最麻烦的,翻了很多资料之后得出一些结论。

官方说见参使用的是顶点光照,然后说了由于顶 ...

估计还是0的光源弄的有点多,迪斯科舞厅里有时也掉点。现在想想,模拟***十年代还是挺费事的。

精华
0
帖子
78
威望
0 点
积分
97 点
种子
19 点
注册时间
2019-2-24
最后登录
2022-12-20
 楼主| 发表于 2019-5-14 19:13  ·  山东 | 显示全部楼层
shtoi 发表于 2019-5-14 16:04
另外找到了关于顶点光照的另外一个描述:
逐顶点光照的计算量往往要小于逐像素光照 .

太专业了,请收下我的膝盖!
我看了个大概五成懂,再看一遍!

精华
0
帖子
429
威望
0 点
积分
1008 点
种子
5 点
注册时间
2014-9-30
最后登录
2020-11-16
发表于 2019-5-14 23:17  ·  天津 | 显示全部楼层
dsaaa 发表于 2019-5-14 18:27
估计还是0的光源弄的有点多,迪斯科舞厅里有时也掉点。现在想想,模拟***十年代还是挺费事的。 ...

说到光源数量,这个就要提一下了。

当时PS3时期的时候,最基础的渲染模式可以粗略分为两种,前向渲染和延迟渲染。

前向渲染顾名思义,每帧首先绘制每一个多边形物体,其中每遇到一个光源,就要重新计算一遍被光源照亮的物体,因此光源越多,开销越大,即使光源照在了摄像机看不见的地方也依旧会产生开销。

延迟渲染则是先完全将场景渲染完成,然后在此基础之上重新加入光照信息,延迟渲染本身并不会造成游戏的延迟,只是推后了计算光照的时间,由于光照是一次性完成的,所以无论多少个光源都能一口气搞定,开销换算的话1000个点光源的开销与向前渲染3个平行光源的开销比较接近。

如龙见参到如龙5均使用向前渲染,而如龙维新到如龙极均使用延迟渲染。

但是延迟渲染并非完美无瑕,首当其冲的就是和硬件抗锯齿无法兼容,那一段时间很***C游戏也去掉了诸如MSAA之类的抗锯齿效果,开始研究诸如FXAA和SMAA之类的后处理抗锯齿方案,主要造成这种结果的原因是由于多边形和光照被分开计算,最后图像完成合并的时候已经只是一张图片了,所以只能再对这张图片进行处理,所以如龙维新开始取消掉如龙4加入的2xMSAA,取而代之的则为PS4版本添加了FXAA。

另外延迟渲染无法处理半透明物体,游戏中的半透明物体只能通过特殊处理的方式最后加入,半透明物体不包含深度信息,所以会与景深模糊之类的效果产生冲突(例如FF15著名的眼镜事件,以及很多游戏毛发边缘会与模糊特效形成锯齿边缘),而且还有半透明物体与TAA(时间抗锯齿)叠加形成奇妙的bug的情况(在幽灵行动荒野中遇到过),因此也有的游戏采用了Forward+的方案,来解决类似的问题(例如GT赛车这种需要对车辆玻璃进行优先处理的情况),但是Forward+仅支持DX11和更高版本的硬件,PS3是无法使用了。

精华
0
帖子
1165
威望
0 点
积分
1539 点
种子
384 点
注册时间
2009-4-20
最后登录
2024-4-26
发表于 2019-5-15 06:00  ·  北京 | 显示全部楼层
说到光源数量,这个就要提一下了。

当时PS3时期的时候,最基础的渲染模式可以粗略分为两种,前向渲染和延迟渲染。

前向渲染顾名思义,每帧首先绘制每一个多边形物体,其中每遇到一个光源,就要重新计算一遍被光源照亮的物体,因此光源越多,开销越大,即使光源照在了摄像机看不见的地方也依旧会产生开销。

延迟渲染则是先完全将场景渲染完成,然后在此基础之上重新加入光照信息,延迟渲染本身并不会造成游戏的延迟,只是推后了计算光照的时间,由于光照是一次性完成的,所以无论多少个光源都能一口气搞定,开销换算的话1000个点光源的开销与向前渲染3个平行光源的开销比较接近。

如龙见参到如龙5均使用向前渲染,而如龙维新到如龙极均使用延迟渲染。

但是延迟渲染并非完美无瑕,首当其冲的就是和硬件抗锯齿无法兼容,那一段时间很***C游戏也去掉了诸如MSAA之类的抗锯齿效果,开始研究诸如FXAA和SMAA之类的后处理抗锯齿方案,主要造成这种结果的原因是由于多边形和光照被分开计算,最后图像完成合并的时候已经只是一张图片了,所以只能再对这张图片进行处理,所以如龙维新开始取消掉如龙4加入的2xMSAA,取而代之的则为PS4版本添加了FXAA。

另外延迟渲染无法处理半透明物体,游戏中的半透明物体只能通过特殊处理的方式最后加入,半透明物体不包含深度信息,所以会与景深模糊之类的效果产生冲突(例如FF15著名的眼镜事件,以及很多游戏毛发边缘会与模糊特效形成锯齿边缘),而且还有半透明物体与TAA(时间抗锯齿)叠加形成奇妙的bug的情况(在幽灵行动荒野中遇到过),因此也有的游戏采用了Forward+的方案,来解决类似的问题(例如GT赛车这种需要对车辆玻璃进行优先处理的情况),但是Forward+仅支持DX11和更高版本的硬件,PS3是无法使用了。


应该还是延迟处理有发展空间,毕竟一个一个算太慢了,而且消耗资源,并行处理才有发展空间。

精华
0
帖子
429
威望
0 点
积分
1008 点
种子
5 点
注册时间
2014-9-30
最后登录
2020-11-16
发表于 2019-5-15 09:54  ·  天津 | 显示全部楼层
dsaaa 发表于 2019-5-15 06:00
应该还是延迟处理有发展空间,毕竟一个一个算太慢了,而且消耗资源,并行处理才有发展空间。 ...

Forward+算是处理好了两边,硬件抗锯齿和透明物体重新回归,但必要的就是dx11,前向渲染在老设备比如低端手机还有使用空间,毕竟延迟渲染对带宽的开销是最大的。

在前向渲染里一般的解决方法是烘焙光源,所以在差不多10年左右以前的游戏,光照和阴影都不会动,再给会动的角色单独打光照和渲染阴影,所以在老如龙里面经常会有看着很黑的角落,主角走进去自己的亮度还是挺高的这种不统一的情况。

另外就是现阶段行业从光源数量的需求转变为对真实光源的需求,上千个点光源也基本只能在鲁大师跑分这种里见到了,现在行业里做法多数是计算光照反弹、漫反射、环境光照、间接阴影,一般统称为全局光照,光照计算更加复杂,一个小区域可能就要前后接收几十个或上百个光照的影响,虽然光源数量除非是移动端大概是不会回归前向渲染那么稀少,同时结构也变得更加复杂,所以目前比较主流的游戏例如COD13就使用了Forward+,以及辐射度烘焙的全局光照信息。

精华
0
帖子
1165
威望
0 点
积分
1539 点
种子
384 点
注册时间
2009-4-20
最后登录
2024-4-26
发表于 2019-5-15 17:01  ·  北京 | 显示全部楼层
Forward+算是处理好了两边,硬件抗锯齿和透明物体重新回归,但必要的就是dx11,前向渲染在老设备比如低端手机还有使用空间,毕竟延迟渲染对带宽的开销是最大的。

在前向渲染里一般的解决方法是烘焙光源,所以在差不多10年左右以前的游戏,光照和阴影都不会动,再给会动的角色单独打光照和渲染阴影,所以在老如龙里面经常会有看着很黑的角落,主角走进去自己的亮度还是挺高的这种不统一的情况。

另外就是现阶段行业从光源数量的需求转变为对真实光源的需求,上千个点光源也基本只能在鲁大师跑分这种里见到了,现在行业里做法多数是计算光照反弹、漫反射、环境光照、间接阴影,一般统称为全局光照,光照计算更加复杂,一个小区域可能就要前后接收几十个或上百个光照的影响,虽然光源数量除非是移动端大概是不会回归前向渲染那么稀少,同时结构也变得更加复杂,所以目前比较主流的游戏例如COD13就使用了Forward+,以及辐射度烘焙的全局光照信息。


都这样,一般都是两种算法,有一种好一些,但都有各自的瓶颈和局限。新技术不是光追嘛,不知道又会什么样子。日式游戏过去都是一个一个渲染,可能是因为从2d来的经验多些,但是太麻烦,无法流水线。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|A9VG电玩部落 川公网安备 51019002005286号

GMT+8, 2024-4-27 08:27 , Processed in 0.176522 second(s), 15 queries , Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

返回顶部