以Unity6.0为例,如何在Unity中开启DLSS功能

DLSS

DLSS(NVIDIA 深度学习超级采样):NVIDIA DLSS 是一套由 GeForce RTX™ Tensor Core 提供支持的神经渲染技术,可提高帧率,同时提供可与原生分辨率相媲美的清晰、高质量图像。目前最新突破DLSS 4 带来了新的多帧生成,并与 DLSS 技术套件配合使用,将性能比传统渲染提高多达 8 倍,同时保持 NVIDIA Reflex 的响应速度。由于DLSS技术对于硬件要求较高,本人的电脑配置不符合DLSS 4的实际要求,故仅以Unity内置DLSS做简单测试,现将DLSS技术的部分硬件及驱动要求列于如下所示,不完全准确,详情可到DVIDIA官网进行查看:

NVIDIA DLSS 技术 |NVIDIA 开发人员

硬件及驱动等

DLSS 1.x: NVIDIA RTX 20系列显卡,支持DirectX 11及以上系统,将驱动程序更新到最新版本以满足DLSS需求。

DLSS 2.x: NVIDIA RTX 20,30系列显卡,支持DirectX 11 及以上系统,将驱动程序更新到最新版本以满足DLSS需求。

DLSS 3:NVIDIA RTX 40系列显卡,依赖其独有的光流加速器与更强的张量核心,支持DirectX 11及以上系统,将驱动程序更新到最新版本以满足DLSS需求。

DLSS 3.5:NVIDIA RTX 40系列显卡(支持帧生成技术),光线重建技术所有RTX显卡都可以实现,支持DirectX 11及以上系统,将驱动程序更新到最新版本以满足DLSS需求。

DLSS4.0:NVIDIA RTX 50系列显卡,支持DirectX 11及以上系统,将驱动程序更新到最新版本以满足DLSS需求。支持DirectX 12系统,将驱动程序更新到最新版本以满足DLSS需求。

以上技术能够充分实现的前提是使用游戏及应用必须支持DLSS系列技术,否则无法在相应的游戏或应用中体现出DLSS技术的优势。

Unity版本要求

Unity官方在Unity2021.2版本与DVIDIA合作,将DLSS 技术融入到Unity中,此后的Unity版本一般在HDRP项目中可原生支持DLSS 技术,故此篇文章要求的Unity版本需要Unity2021.2及以上版本,本人用于测试的版本为Unity 6系列版本及Unity2021.3版本。

实现方法

实现在Unity中启动DLSS的方法主要有三个,鉴于前两个分别耗费时间和金钱较大,本人主要使用了第三种方法,考虑到大佬们可能有方法克服前两种困难,故也将这两种方法一同列出:

1.使用Streamline SDK,用户可从github下载SDK,用于集成更多的NVIDIA技术(DLSS,Reflex等),将SDK导入Unity后,通过C#脚本调用API,以实现对应的要求。此方法较有技术门槛,或许还需要用户自行收集对应技术的其他库,故不推荐小白入手,SDK下载网址如下:

GitHub - NVIDIAGameWorks/Streamline: Streamline Integration Framework

2.可通过Unity的资源商店或CSDN的其他技术博客中的链接下载Unity的DLSS插件,DLSS-Upscaling for Unity, 将资源导入Unity中以实现对应需求,此方法可能会有一些经济支出,需要者可自行选择。

3.通过在原生支持DLSS技术的Unity中进行操作以实现开启DLSS功能,下面我将会对于此方法详细介绍,正文开始,操作加载中......

正文

首先检查自己的硬件,驱动,Unity版本是否符合要求,大家可通过在GeForce Experience的设置查看个人的显卡和驱动版本或将驱动程序进行升级等。确定符合要求后在Unity中创建一个HDRP项目以支持DLSS功能,以下为HDRP支持DLSS的平台(来源:Unity官方手册)

在Project Settings中找到当前的HDRP Asset文件,单击以快速确定其位置。

查看当前HDRP Asset的Inspector窗口,勾选Rendering下的Dynamic resolution中的Enable选项。

打开Window下的Package Manager窗口,选择Built-in,搜索NVIDIA,安装其内置包,也可以通过下图通过对NVIDIA的DLSS功能进行激活修复,到包管理器中查看是否下载成功。

在Unity 6中,可通过下图所示开启DLSS,而在Unity2021.3中其视图稍显不同,总归操作一致,无伤大雅。

Unity 6版本

Unity2021.3

在成功启用DLSS后,可看到几个与DLSS有关的属性,大家可通过对不同的属性进行调整以获取更好的游戏或应用体验。

接下来我们来找到使用了该HDRP Asset的Camera游戏物体,在其Camera组件的Rendering选项下,勾选Allow(HDRP) Dynamic Resolution选项(Allow后的括号中是Unity 6中的叫法),勾选后出现DLSS的不同属性值,此时,我们就已成功在Unity中开启DLSS的功能了。

Unity 6版本

上图提示信息提醒我们此时正在使用DLSS功能,在DLSS开启时,Fallback Post Anti-aliasing作为备用选项其优先级低于DLSS,只用当DLSS失去效果时其才能发挥作用,如果想要使用备选功能,取消勾选Allow DLSS,该选项就可以正常使用了。

以上就是本篇文章的全部内容了,希望能给道友带来一些帮助,拜~

相关推荐
上证50指数etf1 分钟前
Unity笔试常考
unity
Merlin-Ice20 分钟前
Unity Shader Feature
服务器·前端·unity
keep-learner3 小时前
Unity Dots理论学习-5.与ECS相关的概念
学习·unity·游戏引擎·ecs
GrimRaider3 小时前
【逆向工程】破解unity的安卓apk包
android·unity·游戏引擎·软件逆向
虾球xz6 小时前
游戏引擎学习第96天
前端·学习·游戏引擎
虾球xz6 小时前
游戏引擎学习第91天
学习·机器学习·游戏引擎
90后小陈老师1 天前
Unity使用新输入系统控制物体移动
unity·游戏引擎
咩咩觉主1 天前
[Unity角色控制专题] 详细说明如何使用Character Controller配合脚本实现类似MC的第一人称控制(仅移动与视角摇晃)
unity·c#·游戏引擎
DBBH1 天前
U3D支持webgpu阅读
unity