栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 游戏开发 > 其他

DCC - Photoshop - Nvidia NormalMapFilter - 法线生成工具 - 顺便测试 Unity URP 12.1 中的 Decal System

其他 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

DCC - Photoshop - Nvidia NormalMapFilter - 法线生成工具 - 顺便测试 Unity URP 12.1 中的 Decal System

文章目录
  • NVIDIA Texture Tools Exporter 下载、安装
  • 法线生成素材图
  • 扣干净无用像素
  • 使用 NVIDIA Normal Map Filter 生成贴图
  • 配置好 URP Renderer
  • 添加好 Decal Render Feature
  • 设置好 Decal Render Feature Techniqu: DBuffer
  • 配置好 unity shader graph
  • 添加 URP Decal Projector 组件
  • 配置好 URP Decal Projector 参数
  • 最终效果
  • 原理
  • Project


之前有一篇使用几何体的方式来绘制深坑,这种方式效果还不错,局限性还是有的,具体可以参考:Unity Shader - URP - 抄作业 - Deep Crack - 裂痕深坑 - SRP Batch优化

图形效果铁原则:制作方法没有最好的,只有最适合的,只要看起来不错,就够了


今天研究使用:URP 12.1 中的 Decal System

然后尝试了一下 在 Decal 中修改原来 GBuffer 的 Normal 的效果

但是没有法线图,我就随便那一张之前项目测试用的地裂图来做测试

但是只有 albedo,没有 normal


NVIDIA Texture Tools Exporter 下载、安装

使用 Photoshop 来构建法线,使用到 NVIDIA Texture Tools Exporter

这个工具生成并不复杂,原理和:高度转法线的功能差不多,可以查看我之前的一篇:Unity Shader - ddx/ddy偏导函数测试,实现:锐化、高度图、Flat shading应用、高度生成法线

安装好之后,在:滤镜/NVIDIA Tools/NormalMapFilter… 中即可打开

在对应的 photoshop 安装目录下回有一个 plugin 有显示 *.8bf 文件


法线生成素材图

打开这么一张图:


扣干净无用像素

使用魔术棒工具,设置好:不连续,20 容差

将中间灰色部分扣除掉


使用 NVIDIA Normal Map Filter 生成贴图

打开上面提到的:NVIDIA Normal Map Filter 工具,设置好参数,点击:OK

下面就是生成后的法线贴图


配置好 URP Renderer

不使用 RenderPath: Deffered 也没问题,原来时:Forward

如果 RenderPath : Forward的话,那么在 Render Feature 中的 Techinque 要选择:DBuffer


添加好 Decal Render Feature


设置好 Decal Render Feature Techniqu: DBuffer


配置好 unity shader graph


添加 URP Decal Projector 组件

在 hierarchy 视图添加:empty go,添加 URP Decal Projector


配置好 URP Decal Projector 参数


最终效果


原理

以 Deferred Rendering Path 为例

URP Decal Projector 组件集成了:从过 Blit 也好,或是 CopyTo/CopyFrom 也好
先将 GBuffer 中的 Albedo, Normal 等,需要的数据复制到 DBuffer

然后 在 Decal Shader 中读取 DBuffer 的参数,修改通过该Decal Shader 逻辑处理修改后的数据重新输出到 GBuffer

然后 GBuffer 就按 Deferred Rendering Path 流程,继续往下走


下面是正常的 Deferred Rendering Path 的过程


然后我在 GBuffer 之后再添加一个 修改 GBuffer 的过程

修改过程如下


然后我们将: Modifing GBuffer Data - Decal Shader 子过程放入到原来的 Pipeline 中,如下:


这样就达到了修改 normal 的效果

URP Decal Shader Graph 中,也提供了修改 Base Col, MAOS ,就是修改 albedo, metallic, ao, smoothness 的关键地方,如下图所示


Project

TestURP_DecalSystem_Unity_2021.3.1f1.unitypackage

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/901279.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号