▼扩展阅读:光线追踪和DLSS到底是个什么玩意 本文旨在用通俗易懂的语言帮助大家快速了解这两款新技术,所以应该不会涉及太硬核的专业术语。 ● 光线追踪 光线追踪技术,官方标准叫做DXR(DirectX Ray Tracing),英伟达把它叫做RTX技术,AMD可能会直接叫Ray Tracing。 简单来说,光线追踪技术就是让你在游戏中能体验到更加接近于现实的光影效果,比如水中的倒影和车身的反光。 上帝说,要有光,失去光的世界就没有了灵魂。经常去电影院看电影的人都大概了解光线追踪大概是什么样子的,电影上的窗户、水面和金属面在特写的时候都会有很绚丽的反射、阴影和折射效果,这就是光线追踪实际作用的地方。这种效果理论上来说实拍是可以拍出来的,但因为拍电影的时候不像静态摄影那样找准角度再拍,在跟随打斗爆炸等场面的时候已经很难分心去照顾光线效果了,所以是很难通过真实拍摄拍出来,还有科幻片中的各种特效,比如星战片中宇宙的各种反射光,宇航服头盔面罩反射出的各种物体等,其实都是通过光线追踪完成的,所以我们看到的电影特效非常震撼,临场感十足,很多时候就是因为有光线追踪的加持,画面非常逼真。 电影这么逼真的效果在以前是要消耗非常长的时间去渲染每一帧,将每帧的光线效果做到最好。而游戏这种实时渲染的场景以当时的硬件水平来说是很难做到具有光追效果的画面。所以在很长的一段时间游戏里的光线效果渲染都使用了光栅化技术。 但光栅化有一个缺点就是虽然渲染速度和画质都在一个比较平衡的位置,有些游戏甚至有媲美真实世界的物体材质,但它的光线效果却一直给人一种假的感觉,不自然。这时候英伟达的RTX技术就是用于这种场景,让游戏场景中的光线折射场景更加真实,同时具有比较好的运行性能。 光栅化渲染,游戏中的大部分反射场景已经用预先处理好的图像代替,渲染效率非常高,但换个角度看就能感觉到效果很差。 光线追踪技术,以玩家眼球(屏幕)开始反推光的路线,在物体表面投影出近似于真实世界的反射效果。 ● DLSS 首先要说明一下: DLSS不是抗锯齿技术! DLSS不是抗锯齿技术! DLSS不是抗锯齿技术! 重要事情说三遍。 DLSS,全名Deep Learning Super-Sampling,基于深度学习的超级采样。 深度学习,你可以将它理解为AI(人工智能)的一类,不断学习提升自我。举个栗子,你教这个AI(深度学习)认识东西,比如说让它区分老鼠和猫,你需要给它巨量的老鼠图和猫图跟他说:这是猫,这是老鼠。这样用大量的数据去训练这个AI,让它对这种事物的认知度加深的过程就是深度学习。 而超级采样,简单来说就是很粗暴的提升渲染分辨率,然后缩放画面实现提高画质的效果。 最开始的超级采样技术应用就是SSAA(Super-Sampling Anti-Aliasing),超级采样抗锯齿。它处理图像的方式非常直接,简单来说,就是将本来准备要输出的小图(1080P),放大到大图(4K)进行渲染然后再缩回小图,这样理论上渲染1080P的画面却消耗了4K画面所需要的显卡资源,所以SSAA虽然是精度最高的抗锯齿方法,但是也是效率最低的抗锯齿方法。 但是这个DLSS跟SSAA是反着来的,它是将小图拉伸至大图,再通过深度学习AI插值,从而将小图填充成一张大图。理论上来讲,DLSS也是通过放大分辨率增强画质,不过不同于SSAA先渲染大图然后缩成小图,DLSS是先渲染小图再弄成大图再缩回小图。使用DLSS后显卡使用的资源大概相当于正常渲染1080P的资源。也就是说如果你用的是4K屏,开启DLSS后,你就是在4K屏上玩4K画质的游戏,但是显卡资源占用只有1080P那么多。 问题是理论终归是理论,现实很骨感。 ● 光追与DLSS同时存在的意义 理论上DLSS不能像以前调低画质那样随心所欲提升帧数,它与非常多的东西有密切关系,很多条件相互制约,但是它对提升光追的帧数却有非常明显的效果。 这里需要提及一下Cuda,图灵卡新增的Tensor Core和RTcore。 无光追的大多数情况: DLSS需要占用Cuda和Tensor Core资源。 传统渲染占用Cuda资源。 那问题就来了,开启DLSS后那就是游戏跟DLSS互相抢Cuda资源,谁处理后的帧数高谁就抢赢了。然而Tensor Core资源是有极限的,在1080P下的大多数情况,DLSS极限性能远不如正常渲染的性能,打开后还会拖后腿。举个栗子:假如1080P下显卡不开DLSS正常渲染的话有150帧性能,打开DLSS只有90帧性能,那实际下帧数就不会超过90帧,DLSS开了还不如不开。 打开光追的情况: DLSS占用Cuda和Tensor Core资源。 传统渲染占用Cuda资源。 光追占用RTcore、Cuda资源还有Tensor Core资源。 这一看不得了,全乱套了,光追和DLSS几乎每个核心都插一脚。复杂的不说了,我们着重看DLSS和光追都吃到的Tensor Core。 DLSS和光追占用的Tensor Core有一个平衡的关系,只有DLSS和光追运行速率都达到一个比较和谐的程度(DLSS能刚好渲染完光追后的图),这时候Tensor Core利用率最高,帧数达到最大化。而要达到这个和谐的程度跟分辨率有关,只有靠近那个最佳分辨率才能最大化Tensor Core使用,不然都是浪费资源。这里再举个栗子,一个程序开启光追和DLSS后最佳分辨率为2K,能稳定60帧运行。靠近1080P后,理论帧数应该更高,但是光追给过去DLSS的图太快了量太多了,处理不来,达到瓶颈,运行帧率就达不到60帧。靠近4K后,光追要渲染的细节更多,光追处理的帧率达到瓶颈,供给DLSS处理的速率也下降,运行帧率也达不到60帧。 但是,在打开光追的情况下,理论上无论什么分辨率,开启DLSS后都能提升帧数,它将光追后的图像资料用降低分辨率的方法处理比传统渲染要快。 这也是两项技术同时推出的意义:让程序在运行光线追踪后开启DLSS可以获得不错的帧数。 |
閺€鎯版閹存劕濮�閺屻儳婀呴弨鎯版>>
正在阅读:【DIY老司机】开始就被Diss的光追游戏 今年才是它大展拳脚的时候【DIY老司机】开始就被Diss的光追游戏 今年才是它大展拳脚的时候
2020-01-30 00:15
出处:PConline原创
责任编辑:xiezixian
键盘也能翻页,试试“← →”键
本文导航 | ||
|
浏览本产品的网友还关注:
为您推荐
IT热词