Unity ShaderGraph教程——基础shader

这篇具有很好参考价值的文章主要介绍了Unity ShaderGraph教程——基础shader。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

 1.基本贴图shader:

Unity ShaderGraph教程——基础shader,unity,贴图,游戏引擎

 基础贴图实现:主贴图、自发光贴图、光滑度贴图、自发光贴图(自发光还加入了颜色影响和按                              钮开关).

步骤:最左侧操作组——新建texture2D——新建sample texture 2D承接图片,转接到fragment片元着色器

颜色的rgb的每个值都是[0,1]的,颜色值相乘必然会使颜色值减小(物体更暗),相加必然会使颜色值增加更加接近1(物体更亮),自发光贴图大部分区域都是小于1的值,所以和颜色相加输出。

注意:此时未用到金属度贴图,金属度贴图记得是把透明通道输出接给metallic,而不是all

Unity ShaderGraph教程——基础shader,unity,贴图,游戏引擎

Unity ShaderGraph教程——基础shader,unity,贴图,游戏引擎

 将复杂的相关节点打组生成单独的部分减少混乱度。

Unity ShaderGraph教程——基础shader,unity,贴图,游戏引擎

2.外轮廓光:fresnel effect节点

Unity ShaderGraph教程——基础shader,unity,贴图,游戏引擎

Unity ShaderGraph教程——基础shader,unity,贴图,游戏引擎

 创建float控制外发光程度,创建颜色用作外发光颜色调节,将菲涅尔和发光颜色通过Mutiply乘起来,菲涅尔数据比较大,通过颜色相乘得到的数值比较合理。

3.溶解:

Unity ShaderGraph教程——基础shader,unity,贴图,游戏引擎

Unity ShaderGraph教程——基础shader,unity,贴图,游戏引擎

 clipfloat是控制消融程度的数值,如果需要自动消融可以用time节点的sin或者cos结合reamp节点实现。

代码控制溶解:

 public float DissloveTime = 3f;

    private SkinnedMeshRenderer[] _renders;

    private void Start()
    {
        //获得所有的蒙皮网格渲染器
        _renders = transform.GetComponentsInChildren<SkinnedMeshRenderer>();
        StartCoroutine(Dissolve());
    }

    private IEnumerator Dissolve()
    {
        //调用获取shader参数
        SetDissolveRate(0);
        float time = 0f;
        while (time < DissloveTime)
        {
            time += Time.deltaTime;
            //根据时间给shader对应参数赋值
            SetDissolveRate(time / DissloveTime);
            yield return null;
        }
    }

    private void SetDissolveRate(float value)
    {
        //获取控制溶解的float参数值
        int shaderid = Shader.PropertyToID("_clipfloat");
        foreach (SkinnedMeshRenderer meshrender in _renders)
        {
            foreach (Material materia in meshrender.materials)
            {
                //给控制溶解程度的参数动态赋值,控制所有skin数据变化
                materia.SetFloat(shaderid, value);
            }
        }
    }

 //获取控制溶解的float参数值
        int shaderid = Shader.PropertyToID("_clipfloat");

这一步需要去shadergraph里查看设置的节点id名是什么

Unity ShaderGraph教程——基础shader,unity,贴图,游戏引擎文章来源地址https://www.toymoban.com/news/detail-686764.html

到了这里,关于Unity ShaderGraph教程——基础shader的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【unity造轮子】Unity ShaderGraph使用教程与各种特效案例(2023/7/9更新)

    ShaderGraph官方案例:https://github.com/UnityTechnologies/ShaderGraph_ExampleLibrary 最近在玩ShaderGraph,决定把我自己实验的所有效果记录到这篇博客中,附带完整高清的连线动态图,希望对想要学习ShaderGraph的同学有所启发。后续有发现一些新的ShaderGraph我还会继续进行更新。 这里我就不对

    2024年02月13日
    浏览(31)
  • 【Unity-Shader脚本】0基础学会通过用Unity-Shader脚本渲染图像数据(NV21,NV12,RGBA数据)详细教程--附demo,NV21测试图像,YUV图像查看器。

      最近有一个需求是需要我在Unity中将获取到的图像数据来展示在Unity的界面之中。功能其实很简单,熟悉Unity-Shader的小伙伴可能很快就可以做出来。然而我很少和图像的渲染打交道,基本上是0基础了,在做这个需求之前连Shader是什么都不知道。本文记录了自己做这个需求

    2024年02月03日
    浏览(43)
  • Unity教程||Unity 渐进式光照贴图烘焙详解

    随着各大计算平台的算力稳步增长,特别是GPU技术的不断进化,原先可望而不可及的技术比如实时光线追踪技术开始逐步走入玩家的视野。一些先锋厂商甚至已经超出Demo的范畴,开始正式推出支持实时光追的游戏。 不过目前的实时光追技术还只能在配备了最新Nvidia RTX 20系列

    2024年02月08日
    浏览(38)
  • Unity 粒子特效、材质发光 HDR ShaderGraph图文教程[完成lit发光设置]

    效果如图 准备工作-- 在hdr模式下,关闭Directional Light ,相机设置 移动球挂一个点光源作为子节点,设置自行调节 0.创建移动球的材质及shader shader--在 Project / Create / Shader Graph/ URP / unlit shader graph ; 双击新创建的shadergraph文件,在shadergraph编辑器中 右键new node 输入color。将color链

    2024年02月01日
    浏览(29)
  • 游戏基础常识 Unity的三种常见贴图

    Normal Map 法线贴图 看起来像蓝色的凹凸图用于体现模型细节 Diffuse Map 漫反射贴图 将平面图像福附着在3d模型上,使模型的像素按uv坐标显示贴图上的颜色信息,从而使模型拥有跟多的细节。漫反射贴图包含物体最基本的色彩信息 这就是我们实现游戏内换色的方法:更换这张贴

    2024年02月11日
    浏览(34)
  • 【Unity基础】2.网格材质贴图与资源打包

        大家好,我是Lampard~~     欢迎来到Unity基础系列博客,所学知识来自B站阿发老师~感谢      第一次接触3D物体的话,会觉得好神奇啊,这个物体究竟是由什么组成的呢?其实3D物体基本就是由网格,材质和纹理3个部分构成的 (1)网格     那什么是网格?首先需要知道

    2024年01月22日
    浏览(27)
  • Unity | Shader基础知识(第一集:unity中最简单的shader)

    目录 一、unity的shader 二、创建一个shader(在创建时,选前三种都可以) 三、内容解读 1.shader一直都在 2.我们写shader在写什么 四、没有被干预的shader(最简单的shader) 相关阅读 编写着色器概述 - Unity 手册 一、unity的shader unity写的shader并不是真正意义上的shader。 官方解释:

    2024年02月04日
    浏览(42)
  • Unity | Shader基础知识(什么是shader)

    Shader的中文名叫着色器。 着色器的作用: 这个世界是3D的,包括在Unity的场景中,我们建的球球,方块块之类的,都是3D的,但是,屏幕是2D的,把3D的东西,通过颜色的汇总,显示在2D的屏幕上。 想知道颜色是怎么合到一起的,我们就找个图片,把它拆开看。 因为世界上所有

    2024年02月15日
    浏览(50)
  • Unity Shader入门精要 第六章——Unity中的基础光照

    目录 一、标准光照模型(Phong光照模型) 1、环境光  2、自发光 3、漫反射 4、高光反射 (1)Phong模型 (2)Blinn模型 5、光照模型实现方法——逐顶点和逐像素 二、Unity Shader 漫反射光照模型的实现 1、实践:逐顶点 2、实践:逐像素 3、半兰伯特模型 4、漫反射光照模型效果展

    2024年02月04日
    浏览(40)
  • 【瑞模网】Unity3D基础:贴图与材质球

    一、贴图与材质球 材质(Material):物体的质地,物体看起来是什么做的 贴图(Texture):普通的材质图片 贴图 + 着色器(Shader) = 材质球 所谓着色器(Shader)实际上就是一小段程序

    2023年04月12日
    浏览(42)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包