【Unity ShaderGraph】| 物体靠近时局部溶解,根据坐标控制溶解的位置【文末送书】

这篇具有很好参考价值的文章主要介绍了【Unity ShaderGraph】| 物体靠近时局部溶解,根据坐标控制溶解的位置【文末送书】。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

【Unity ShaderGraph】| 物体靠近时局部溶解,根据坐标控制溶解的位置【文末送书】,Unity Shader Graph,unity,游戏引擎,游戏,溶解效果,game,Shader,ShaderGraph

【Unity ShaderGraph】| 物体靠近时局部溶解,根据坐标控制溶解的位置【文末送书】,Unity Shader Graph,unity,游戏引擎,游戏,溶解效果,game,Shader,ShaderGraph


前言

  • 本文将使用ShaderGraph制作一个根据坐标控制溶解的位置,物体靠近局部溶解的效果,可以直接拿到项目中使用。
  • 对ShaderGraph还不了解的小伙伴可以参考这篇文章:【Unity ShaderGraph】| Shader Graph入门介绍 | 简介 | 配置环境 | 窗口介绍 | 简单案例
  • 下面就开始看一下具体的制作流程,然后自己动手制作一个吧!

【Unity ShaderGraph】| 物体靠近时局部溶解,根据坐标控制溶解的位置

一、效果展示

【Unity ShaderGraph】| 物体靠近时局部溶解,根据坐标控制溶解的位置【文末送书】,Unity Shader Graph,unity,游戏引擎,游戏,溶解效果,game,Shader,ShaderGraph


二、根据坐标控制溶解的位置,物体靠近局部溶解

首先在Project下右键 Creat - > Shader Graph -> URP -> Lit Shader Graph创建一个Lit Shader Graph
【Unity ShaderGraph】| 物体靠近时局部溶解,根据坐标控制溶解的位置【文末送书】,Unity Shader Graph,unity,游戏引擎,游戏,溶解效果,game,Shader,ShaderGraph

然后双击打开该ShaderGraph,在ShaderGraph 面板中的Graph Inspector面板上打开Alpha Clipping选项,这样在主节点中才会出现Alpha 和Alpha Clipping参数,将Alpha 改为0.5。

然后按照下图所示进行节点添加和连接:
【Unity ShaderGraph】| 物体靠近时局部溶解,根据坐标控制溶解的位置【文末送书】,Unity Shader Graph,unity,游戏引擎,游戏,溶解效果,game,Shader,ShaderGraph

这里声明了一个Vector3类型的targetpos变量用于接收外部目标物体的坐标位置,Float类型的strength用来控制溶解的强度。

根据Position节点和targetpos的信息,使用Distance节点来计算 目标位置 距离我们要溶解的模型的顶点坐标的距离,根据这个距离配合噪声节点来控制溶解的触发效果。

效果如下:
【Unity ShaderGraph】| 物体靠近时局部溶解,根据坐标控制溶解的位置【文末送书】,Unity Shader Graph,unity,游戏引擎,游戏,溶解效果,game,Shader,ShaderGraph


三、应用实例

创建完上述ShaderGraph之后在Project下创建一个材质球Material,然后将该ShaderGraph拖到该材质球上即可应用。

此时在场景中添加两个GameObject进行测试,将材质球拖到其中一个对象上用于触发溶解效果,另一个对象用来靠近第一个物体。

还需要创建一个脚本DissolutionTest.cs用来控制材质球的参数,脚本代码如下:

using UnityEngine;

/// <summary>
/// 该脚本挂在要溶解的物体上
/// </summary>
public class DissolutionTest : MonoBehaviour
{
    /// <summary>
    /// 材质球
    /// </summary>
    public Material mat;
    /// <summary>
    /// 要靠近过来的物体
    /// </summary>
    public Transform m_targetObj;

    public GameObject matGo;

    void Update()
    {
        mat.SetVector("Vector3_5ed88c362a9e4bbca58e136b649d69fd", m_targetObj.position);
    }
}

SetVector方法的第一个参数为ShaderGraph中strengthReference值,根据自己的实际参数填写即可,也可以手动将strength的Reference值给修改成指定数值。
【Unity ShaderGraph】| 物体靠近时局部溶解,根据坐标控制溶解的位置【文末送书】,Unity Shader Graph,unity,游戏引擎,游戏,溶解效果,game,Shader,ShaderGraph

将该脚本拖到场景中想要进行溶解的物体身上,然后将对应的溶解效果材质和目标对象拖到该脚本中。
【Unity ShaderGraph】| 物体靠近时局部溶解,根据坐标控制溶解的位置【文末送书】,Unity Shader Graph,unity,游戏引擎,游戏,溶解效果,game,Shader,ShaderGraph

此时运行程序,拖动对象进行效果测试:
【Unity ShaderGraph】| 物体靠近时局部溶解,根据坐标控制溶解的位置【文末送书】,Unity Shader Graph,unity,游戏引擎,游戏,溶解效果,game,Shader,ShaderGraph

使用这个材质可以做一些有趣的玩法,比如有些地方或物品,需要玩家靠近后开始溶解并显示内部的场景,增加游戏趣味性。


  • 🎬 博客主页:https://xiaoy.blog.csdn.net

  • 🎥 本文由 呆呆敲代码的小Y 原创 🙉

  • 🎄 学习专栏推荐:Unity系统学习专栏

  • 🌲 游戏制作专栏推荐:游戏制作

  • 🌲Unity实战100例专栏推荐:Unity 实战100例 教程

  • 🏅 欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正!

  • 📆 未来很长,值得我们全力奔赴更美好的生活✨

  • ------------------❤️分割线❤️-------------------------

【Unity ShaderGraph】| 物体靠近时局部溶解,根据坐标控制溶解的位置【文末送书】,Unity Shader Graph,unity,游戏引擎,游戏,溶解效果,game,Shader,ShaderGraph【Unity ShaderGraph】| 物体靠近时局部溶解,根据坐标控制溶解的位置【文末送书】,Unity Shader Graph,unity,游戏引擎,游戏,溶解效果,game,Shader,ShaderGraph【Unity ShaderGraph】| 物体靠近时局部溶解,根据坐标控制溶解的位置【文末送书】,Unity Shader Graph,unity,游戏引擎,游戏,溶解效果,game,Shader,ShaderGraph

【Unity ShaderGraph】| 物体靠近时局部溶解,根据坐标控制溶解的位置【文末送书】,Unity Shader Graph,unity,游戏引擎,游戏,溶解效果,game,Shader,ShaderGraph

资料白嫖,技术互助

学习路线指引(点击解锁) 知识定位 人群定位
🧡 Unity系统学习专栏 🧡 入门级 本专栏从Unity入门开始学习,快速达到Unity的入门水平
💛 Unity实战类项目 💛 进阶级 计划制作Unity的 100个实战案例!助你进入Unity世界,争取做最全的Unity原创博客大全。
❤️ 游戏制作专栏 ❤️ 难度偏高 分享学习一些Unity成品的游戏Demo和其他语言的小游戏!
💚 游戏爱好者万人社区💚 互助/吹水 数万人游戏爱好者社区,聊天互助,白嫖奖品
💙 Unity100个实用技能💙 Unity查漏补缺 针对一些Unity中经常用到的一些小知识和技能进行学习介绍,核心目的就是让我们能够快速学习Unity的知识以达到查漏补缺

【Unity ShaderGraph】| 物体靠近时局部溶解,根据坐标控制溶解的位置【文末送书】,Unity Shader Graph,unity,游戏引擎,游戏,溶解效果,game,Shader,ShaderGraph


👑评论区抽奖送书

最后在评论区进行抽取三名幸运的小伙伴送下面这本书籍

  • 这次博主多方联系,最终搞到了一些unity 相关的书籍,在这里搞个小活动抽奖送给大家,对看书感兴趣的小伙伴可以参加一波呀,刚开始可能参与的不多,抽中概率很大哦!

  • 《Unity实战(第3版)》

  • 一本非常经典的Unity实战 游戏开发编程名著,结合Unity开发使用效果卓佳!

  • 尤其是想从事Unity开发游戏的小伙伴,这本书就可以让你了解Unity实战用到的相关知识,对症下药可以极大地提高学习效率!

🎁抽奖规则
规则如下:

🚀 规则如下🚀
  • 给本篇博客文章 点赞 收藏 评论 三连,然后在评论区评论里抽取三个小伙伴!送一本Unity的书籍!
  • 总共抽三本,中的几率还是很大的哦~ 想看书的小伙伴参与起来!
  • 中奖信息下周一本篇文章评论区公布!记得留意呀!
  • 没抽到的,但是喜欢这本书的小伙伴也可以在网上自行购买哈,官方正品商店购买即可,目前本书也是五折优惠!
🚀 规则如上🚀

🎄推荐理由(⭐⭐⭐⭐)

  • 学习Unity知识的同时,还要注重实战案例学习,本书也是从Unity引擎的基本介绍开始,通过几个实战案例来深入学习Unity。
  • 如果你意识到自己是为游戏而生,并想要开发和制作游戏,那你一定会受到本书中真实的、独立的游戏实例的启发。
  • 《Unity实战(第3版)》介绍如何使用Unity游戏平台创建游戏。其中包含的许多2D、3D和AR/VR游戏示例能让你亲身体验Unity的工作流程和最先进的渲染引擎。
  • 目前本书已完全更新,介绍了Unity的XR工具包,展示了如何开始构建VR和AR应用。

没抽到的小伙伴也可以在官方商店购买哈,书还是很棒的,喜欢看书也可以买本看~

Unity实战(第3版) 京东官方链接在这,书本图片如下,喜欢的小伙伴参与起来吧!
【Unity ShaderGraph】| 物体靠近时局部溶解,根据坐标控制溶解的位置【文末送书】,Unity Shader Graph,unity,游戏引擎,游戏,溶解效果,game,Shader,ShaderGraph文章来源地址https://www.toymoban.com/news/detail-751633.html

到了这里,关于【Unity ShaderGraph】| 物体靠近时局部溶解,根据坐标控制溶解的位置【文末送书】的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • 初识Unity——基本模型、场景操作、世界坐标系和局部坐标系

    目录 基本模型 创建基本模型 基本模型的复制  复杂模型 场景操作 聚焦 旋转 移动 场景视野  世界坐标系 基本介绍 原点 局部坐标系    创建基本模型之后,会在我们视野中心生成这个模型;当我们需要复制模型的时候,可以使用 “Duplicate”来进行复制,随后拖出来,不使

    2024年02月08日
    浏览(77)
  • unity根据名字查找物体

    在 Unity 中,可以使用 GameObject.Find() 函数来根据名字查找物体。例如: 这样就可以获取名字为 \\\"MyGameObject\\\" 的物体了。 注意,GameObject.Find() 函数只能在场景中查找物体,如果需要在预制件中查找物体,可以使用 Resources.Load() 函数。 还有一点需要注意的是,GameObject.Find() 函数的

    2024年02月12日
    浏览(34)
  • Unity获取物体网格(mesh)顶点(vertex)的世界坐标

    ​​​​ 1、获取物体的所有顶点 注意使用:sharedMesh,而不是mesh 2、顶点的坐标转变成世界坐标 注意: 必须用myGameObject.transform.TransformPoint(v1) 而不是transform.TransformPoint(v1),这一句起始等价于:this.gameobject.transform.TransformPoint(v1) 3、剩下的比较简单了,就在是坐标处安放物体

    2024年02月11日
    浏览(54)
  • 【Unity】摄像机跟随鼠标移动以物体为中心旋转 物体根据视线方向移动

    描述 实现摄像机根据鼠标移动跟随物体旋转,以摄像机前物体为中心,摄像机围绕物体旋转,并使摄像机时刻指向物体 实现效果 Unity 组件设置 Camera 组件设置 Body 组件设置 实现代码 CameraRotateMove.cs 摄像机跟随和旋转 move_better.cs 物体根据按键移动

    2024年02月08日
    浏览(87)
  • Unity获取物体自身坐标轴的方向以及沿着该方向运动的方法

    有时候对于一个游戏对象,需要其沿着自身的坐标轴方向进行运动,那么首先如何获取自身的坐标轴方向? 获取自身的坐标轴方向可以通过transform组件进行获取(负方向加负号即可)  Vector3 moveDirection = transform.right;  获取自身的x轴的方向  Vector3 moveDirection = transform.forward;  获

    2024年02月12日
    浏览(55)
  • Unity3D根据物体运动画出实体轨迹线

    在Unity3D根据物体运动画出实体轨迹线 在Inspector里面添加组件LineRender,线条圆滑设置如下, 颜色可以新建材质直接拖上该物体上就行。 添加脚本LineMark 将上面的Line放在OBS里面,对应需要画出的物体直接拖入右侧的 — 小技巧:想画出对应阶段的轨迹曲线可以通过启用和不启

    2024年02月12日
    浏览(62)
  • UE 极坐标、旋转、溶解、燃烧、查找边缘、浮雕、去色、抖动材质

    也可以使用 UE 自带的 CustomRotator 材质函数。 也可以使用 UE 自带的 Desaturation 表达式。

    2024年02月13日
    浏览(55)
  • Unity VR 开发教程 OpenXR+XR Interaction Toolkit(九)根据不同物体匹配对应的抓取手势

    此教程相关的详细教案,文档,思维导图和工程文件会放入 Spatial XR 社区 。这是一个高质量知识星球 XR 社区,博主目前在内担任 XR 开发的讲师。此外,该社区提供教程答疑、及时交流、进阶教程、外包、行业动态等服务。 社区链接: Spatial XR 高级社区(知识星球) Spatial

    2024年02月16日
    浏览(38)
  • 旋转矩阵的作用:世界坐标变换;求解局部坐标系下的局部坐标

    以下数据以平面直角坐标系为例,三维空间同理 上图中,B点为旋转前的点,C点为B点旋转后的对应点(逆时针旋转90°),对应的旋转矩阵为: 对坐标轴做相同旋转: 我们再对比下旋转矩阵,可以发现旋转后的坐标轴可以在旋转矩阵中找到,其实这个旋转矩阵也表示了一个坐标

    2024年01月22日
    浏览(39)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包