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


前言


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

一、效果展示


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

首先在Project下右键 Creat - > Shader Graph -> URP -> Lit Shader Graph创建一个Lit Shader Graph

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

然后按照下图所示进行节点添加和连接:

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

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

效果如下:


三、应用实例

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

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

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

csharp 复制代码
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值给修改成指定数值。

将该脚本拖到场景中想要进行溶解的物体身上,然后将对应的溶解效果材质和目标对象拖到该脚本中。

此时运行程序,拖动对象进行效果测试:

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


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

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

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

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

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

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

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

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

资料白嫖,技术互助

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

👑评论区抽奖送书

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

  • 这次博主多方联系,最终搞到了一些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版) 京东官方链接在这,书本图片如下,喜欢的小伙伴参与起来吧!

相关推荐
Thomas_YXQ2 小时前
Unity3D 动态骨骼性能优化详解
开发语言·网络·游戏·unity·性能优化·unity3d
Yungoal5 小时前
Unity入门1
unity·游戏引擎
qq_4286396112 小时前
虚幻基础1:hello world
游戏引擎·虚幻
虾球xz14 小时前
游戏引擎学习第84天
学习·游戏引擎
杀死一只知更鸟debug18 小时前
Unity自学之旅04
unity
k56946216619 小时前
失业ing
unity·游戏引擎
橘子遇见BUG21 小时前
Unity Shader学习日记 part5 CG基础
学习·unity·游戏引擎·图形渲染
虾球xz1 天前
游戏引擎学习第83天
学习·计算机视觉·游戏引擎
来恩10032 天前
Unity 学习之旅:从新手到高手的进阶之路
学习·unity·游戏引擎
创世界---2 天前
unity插件Excel转换Proto插件-ExcelToProtobufferTool
unity·excel·exceltoproto·protobuffer