当前位置: 首页 > news >正文

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

请添加图片描述

      • 前言
  • 【Unity ShaderGraph】| 物体靠近时局部溶解,根据坐标控制溶解的位置
  • 一、效果展示
  • 二、根据坐标控制溶解的位置,物体靠近局部溶解
  • 三、应用实例
    • 👑评论区抽奖送书

请添加图片描述


前言

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

【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用来控制材质球的参数,脚本代码如下:

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版) 京东官方链接在这,书本图片如下,喜欢的小伙伴参与起来吧!
在这里插入图片描述

http://www.lryc.cn/news/297581.html

相关文章:

  • 测试OpenSIPS3.4.3的lua模块
  • 【机器学习】数据清洗之处理缺失点
  • Linux 命令行的世界 :2.文件系统中跳转
  • R语言:箱线图绘制(添加平均值趋势线)
  • Open3D 模型切片
  • KtConnect 本地连接连接K8S工具
  • 【Java万花筒】数据的安全钥匙:Java的加密与保护方法
  • 【Java多线程案例】实现阻塞队列
  • 【制作100个unity游戏之24】unity制作一个3D动物AI生态系统游戏3(附项目源码)
  • home work day5
  • c#安全-nativeAOT
  • 【Java】案例:检测MySQL是否存在某数据库,没有则创建
  • 内网渗透靶场02----Weblogic反序列化+域渗透
  • [嵌入式系统-9]:C语言程序调用汇编语言程序的三种方式
  • 备战蓝桥杯---搜索(完结篇)
  • 深入浅出:Golang的Crypto/SHA256库实战指南
  • Unity_ShaderGraph节点问题
  • Java集合 Collection接口
  • C# Task的使用
  • 尚硅谷Ajax笔记
  • 【MATLAB源码-第138期】基于matlab的D2D蜂窝通信仿真,对比启发式算法,最优化算法和随机算法的性能。
  • AcWing 第 142 场周赛 B.最有价值字符串(AcWing 5468) (Java)
  • 滑块识别验证
  • 每日五道java面试题之java基础篇(四)
  • 我的docker随笔43:问答平台answer部署
  • 17、ELK
  • React+Antd+tree实现树多选功能(选中项受控+支持模糊检索)
  • 鸿蒙 WiFi 扫描流程(2)
  • 微信小程序(四十)API的封装与调用
  • WebSocket+Http实现功能加成