Unity可视化Shader工具ASE介绍——1、ASE的介绍、安装和简单使用

news2025/4/9 12:39:43

  大家好,我是阿赵,接下来我打算介绍一下Unity引擎的一个好用的可视化Shader编辑插件。这个插件叫做Amplify Shader Editor,下面都会简称为ASE。这一篇主要是讲一下这个插件的获取、安装,和一些简单的界面用法介绍。之后有机会,再深入的介绍其他的用法。

一、ASE的获取

  ASE插件是一个收费的插件,可以在Unity的Asset Store上面获取。
在这里插入图片描述

二、插件导入

  购买了ASE之后,把它导入到项目,会弹出欢迎页面,里面有版本更新说明、资源例子和说明手册等的信息。
在这里插入图片描述
在这里插入图片描述

  然后会在项目里面多了一个AmplifyShaderEditor的文件夹,里面有一个Examples例子文件夹,和一个Plugins插件文件夹,还有几个说明文档。

三、自带例子

  如果你只是想使用 ASE,那么Examples文件夹其实是可以删掉的。不过我觉得这个例子文件夹里面有很多好东西,可以教会我们很多效果的做法。
在这里插入图片描述

  这些看着是Unity图标的文件,并不是Unity的场景文件,而是Package包,所以双击它们,可以把内容导入到当前项目。
在这里插入图片描述

  比如我这里全部导入完,会发现多了几个文件夹。Assets文件夹之前就有,但里面会多了一些资源。可以看出,ASE可以应用于多种管线的Shader编写,比如HDRP或者URP都可以。
在这里插入图片描述

  这些例子里面会附带一些美术资源,比如这种场景环境的模型
在这里插入图片描述

  还有一些用于展示效果的模型
在这里插入图片描述

  然后里面有非常多的例子,每个例子里面都有场景文件,可以打开来看,然后里面还有Shader和材质球。
在这里插入图片描述
在这里插入图片描述

四、编辑器界面介绍

  这里我随便选择了一个例子,选择里面的材质球,会发现在Inspector面板上面的材质球属性,多了一些按钮。点击一下Open in Shader Editor按钮,就可以打开ASE的节点编辑器。
在这里插入图片描述
在这里插入图片描述

  这一篇文章先来介绍一下这个节点编辑器的各个部分,之后还会另外写文章深入介绍各种功能。

1、属性栏

  在最左边,有一个属性栏。根据我们选择不同的节点,这个属性栏会相应的显示该节点的属性。比如我选择一个输出节点,那么这里就显示了输出节点的属性和选项。
在这里插入图片描述

  然后我选择了一个UV节点,那么相应的这里会变成UV节点的内容。
在这里插入图片描述

2、保存按钮

  在编辑过任何东西之后,会发现左上角的Shader名称后面多了个星号,这是代表当前的Shader还没有保存,如果想保存,可以点击保存按钮。
在这里插入图片描述

3、Shader代码查看

  ASE编辑完节点之后,最终还是会生成一个Shader文件的,所以可以通过点击这个按钮来查看Shader代码。
在这里插入图片描述

  我觉得这是ASE的一个非常好的功能。它生成的代码比较的整齐,可阅读性比较高。而且一些功能比较复杂的节点,有时候我们忘记了具体的代码写法,可以通过ASE生成代码,来查看实现的源码。
在这里插入图片描述

4、节点编辑区

  中间区域是ASE的节点编辑区域,我们主要就是在这个区域来创建节点,连接节点,然后得到我们想要的效果。
在这里插入图片描述

  这里有一个比较厉害的地方,大部分节点的右边都有个小三角,点击可以展开,展开后,可以在节点界面就预览到了节点连接之后的效果。这对于查错时是非常好用的,因为如果手写Shader,发现效果不对的时候,没有办法很直观的知道问题出现在哪里。但在ASE,我们可以直观检查每一个节点当前的效果,很容易知道是哪一步开始出现问题。
在这里插入图片描述

5、辅助工具

  节点编辑区域的右上角有一排辅助按钮,我是比较少用到的,包括了分享链接、截图、居中节点之类的功能
在这里插入图片描述

6、节点查找

  在整个编辑器的最右边,有一个可查找列表,里面列出了ASE自带的所有可用的节点。
在这里插入图片描述

  这个列表,在节点编辑区域鼠标右键点击,也可以出现的。
在这里插入图片描述

四、我对ASE的一些看法

  ASE是一个强大并且高级的可视化Shader编辑器,它的某些功能,甚至比UE的材质编辑器还要好用。
  不过我很少拿ASE编辑完Shader就直接使用在项目里面。原因是ASE毕竟是通过固有的模板去生成Shader代码,所以最终得到的Shader代码会比直接手写的冗余和复杂一些。我一般的做法是,先用ASE快速的把效果连接出来,然后查看生成的代码,再对代码进行一些优化,然后就可以使用了。
  ASE的优点除了出效果快,还内置有很多效果不错的节点可以使用,比如之前介绍过的视差偏移之类的节点。很多算法,实际上我是记不住的,但只要在ASE里面找到了相应的节点,生成代码之后,我就能用了。所以很多时候,我会把ASE当做是一个工具书一样的去查询。
  不过,ASE并不会让不会编写Shader的人变得会编写Shader,因为它只是加快了编写过程,还有记录了很多常用的算法。同样一个效果,如果连接的方式不一样,最终的性能也是不一样的。我见过有些纯美术的同事,对着网上一些例子也连出了大概相似的效果,但实际生成的Shader是完全没法用的,甚至出现了问题,他们也不知道问题出在哪里,更没有办法解决。
  所以,它只是一个好用的工具,但在不懂手写Shader的前提下,最好还是别用。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1043231.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

JDK21新特性 有序集合

有序集合 描述常用有序集合体系LinkedHashMapLinkedHashSetLinkedBlockingDequeArrayDeque 三级目录 描述 Java集合体系中,原来就有有序集合实现,但是没有规范支持有序操作的接口。 JDK21 新增了两个接口 SequencedCollection,SequencedMa…

Visual Studio 安装离线插件 vsix 及常用插件

我们在使用 VS 时,经常会在 “扩展”---“扩展管理” 中的 “Visual Studio marketplace” 中寻找适用插件,帮助提升工作效率。但是有时候无法登陆 markeplace,无法查找或安装所需插件,这时候可以手动安装离线插件,完成…

ROS2 从头开始:第 5 部分 - 并发、执行器和回调组

一、说明 让我们回到基础。并发意味着系统或软件可以同时运行许多任务。例如,在单核 CPU 机器上,可以通过使用线程来实现并发。本文探讨了

蓝牙核心规范(V5.4)11.1-LE Audio 笔记之诞生的前世今生

专栏汇总网址:蓝牙篇之蓝牙核心规范学习笔记(V5.4)汇总_蓝牙核心规范中文版_心跳包的博客-CSDN博客 爬虫网站无德,任何非CSDN看到的这篇文章都是盗版网站,你也看不全。认准原始网址。!!! 1.LE Audio应用的场景 这里面有四个场景是LE Audio最初需要应用的场景。比如助…

前端vue实现页面加水印文字 单个页面所有页面加水印(更新版)

随着前端技术的不断发展,组件化开发已经成为现代前端开发的重要趋势。组件化开发可以将大型复杂的系统分解为可重用的独立组件,实现模块解耦、代码复用和开发效率提升。本文将介绍一种基于Vue技术的前端页面加水印文字的组件化实现方式。 一、背景介绍 …

LetCode算法题

注:大佬解答来自LetCode官方题解 88.合并两个有序数组 1.题目 2.个人解答 var merge function (nums1, m, nums2, n) {//合并for (let i 0; i < n; i) {nums1[i m] nums2[i];}// 排序&#xff08;冒泡排序&#xff09;for (let i 0; i < m n; i) {for (let j 0…

扩散模型 - Diffusion Model【李宏毅2023】学习笔记 Part 1

台大官方网站&#xff1a;ML 2023 Spring (ntu.edu.tw) 【生成式AI】Diffusion Model 概念讲解 (1/2)_哔哩哔哩_bilibili PS&#xff1a; 又出新课程了 计算机发展太快了 希望有机会再完整学一遍2233 正式开始上课--------------------------------------------------------…

系统集成|第十七章(笔记)

目录 第十七章 变更管理17.1 项目变更的基本概念17.2 变更管理的基本原则17.3 角色职位与工作程序17.4 相关事宜 上篇&#xff1a;第十六章、信息&#xff08;文档&#xff09;和配置管理 下篇&#xff1a;第十八章、安全管理 第十七章 变更管理 17.1 项目变更的基本概念 变更…

前后端分离的大数据毕设项目之基于Spark+springboot+vue的共享单车数据存储系统的设计与实现

博主介绍&#xff1a;✌全网粉丝10W,前互联网大厂软件研发、集结硕博英豪成立工作室。专注于计算机相关专业毕业设计项目实战6年之久&#xff0c;选择我们就是选择放心、选择安心毕业✌ &#x1f345;由于篇幅限制&#xff0c;想要获取完整文章或者源码&#xff0c;或者代做&am…

使用EPPlus实现C#控件Excel文件内容导入转换

使用EPPlus实现C#控件Excel文件内容导入转换 1.添加EPPlus库 在使用EPPlus库时&#xff0c;你需要确保在项目中添加了正确的引用。你可以通过以下方式添加引用&#xff1a; 打开你的项目。 在“解决方案资源管理器”中&#xff0c;右键单击“引用”并选择“管理NuGet程序包”…

Linux 文件和目录列表(ls 命令)

Linux 文件和目录列表&#xff08;ls 命令&#xff09; 要想知道系统中有哪些文件&#xff0c;可以使用列表命令&#xff08; ls &#xff09;。 文章目录 Linux 文件和目录列表&#xff08;ls 命令&#xff09;一、基本列表功能1. ls 命令基本形式2. ls 命令 -F 参数3. ls 命…

【笔记】ssh link-local 地址登录

1. link-local 地址 IPv6 中在局域网中是使用 link-local 地址通信的。其以 fe80:: 开头。它的形式跟物理地址 mac 关联。只要 mac 没变&#xff0c;那么&#xff0c;link-local 地址就不变。 2. 使用 link-local 地址的场景 自己搭建了一个局域网&#xff0c;有两台主机&am…

Spring整合RabbitMQ——消费者

1.配置consumer xml配置文件 2. 实现MessageListener接口 并重写onMessage方法

UG NX二次开发(C++)-采用NXOpen方法创建同步建模中的偏置曲面

文章目录 1、 前言2、在UG NX中的偏置操作3、采用NXOpen二次开发偏置曲面4、测试方法4.1 创建UI界面4.2 创建工程4.3 生成结果1、 前言 在UG NX二次开发(C++)中,通过UFun(Open C)函数进行开发的文章比较多,我们这个专栏的博客是主要采用NXOpen开发的,对于这二者的区别,我…

【面试题】面试官:说说你对js中的 防抖 和 节流 的理解

前端面试题库 &#xff08;面试必备&#xff09; 推荐&#xff1a;★★★★★ 地址&#xff1a;前端面试题库 表妹一键制作自己的五星红旗国庆头像&#xff0c;超好看 前言 看到这个题目我想肯定会有人说&#xff1a;不会吧&#xff0c;都3202年了&#xff0c;还…

网络安全--IDS--入侵检测

1. 什么是IDS&#xff1f; IDS---入侵检测是防火墙的一个有力补充&#xff0c;形成防御闭环&#xff0c;可以及时、准确、全面的发现入侵弥补防火墙对应用层检查的缺失。对系统的运行状态进行监视&#xff0c;发现各种攻击企图、过程、结果&#xff0c;来保证系统资源的安全&a…

vue造轮子完整指南--npm组件包开发步骤

一、项目包文件的创建和初始化。 1. 新建项目包。 vue create <Project Name> //用于发布npm包的项目文件名 ps:一般选择自定义&#xff0c;然后不需要Vuex和Router&#xff0c;其他选项按自己实际情况选择安装即可。 2.修改原始src文件名、新增组件项目存放文件和修改…

大模型时代,如何找准AI发展新方向?TVP读书会与你共探

引言 随着 ChatGPT 掀起人工智能的发展狂潮&#xff0c;大模型时代悄然来临。大模型的出现让人们看到了人工智能在某些方面几乎接近人类智能的“威力”&#xff0c;也由此使人们产生了关于 AGI 的期盼与隐忧。其中&#xff0c;关于大模型是否是人工智能发展的拐点、科技从业者又…

使用chat GPT 生成一个js 生成天数的方法

function calculateDaysDifference(targetDateString) {const currentDate new Date();const targetDate new Date(targetDateString);// 计算毫秒差异const timeDifference targetDate - currentDate;// 计算天数差异&#xff0c;如果结果为负数&#xff0c;则设置为0const…

c语言结构体的内存对齐

前言&#xff1a; c语言中结构体的空间大小怎么算呢&#xff1f;就是把里面所有变量的字节大小全部加起来吗&#xff1f; 如果你这么想&#xff0c;说明你对结构体还不够了解&#xff0c;而要想知道结构体开辟空间的规则&#xff0c;那我们就必须先要知道内存对齐是什么。 接…