【实现100个unity特效之4】Unity ShaderGraph使用教程与各种特效案例(下)

简介: 【实现100个unity特效之4】Unity ShaderGraph使用教程与各种特效案例

【实现100个unity特效之4】Unity ShaderGraph使用教程与各种特效案例(上):https://developer.aliyun.com/article/1553571


黑洞吸收效果

能量罩

激光光束

管道液体流动

水瓶液体

脚本挂载到使用材质的物体上

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Wobble : MonoBehaviour
{
    Renderer rend;
    Vector3 lastPos;
    Vector3 velocity;
    Vector3 lastRot;
    Vector3 angularVelocity;
    public float MaxWobble = 0.03f;
    public float WobbleSpeed = 1f;
    public float Recovery = 1f;
    public float wobbleAmountX;
    public float wobbleAmountZ;
    float wobbleAmountToAddX;
    float wobbleAmountToAddZ;
    float pulse;
    float time = 0.5f;
    // Use this for initialization
    void Start()
    {
        rend = GetComponent<Renderer>();
    }
    private void Update()
    {
        time += Time.deltaTime;
        // 随着时间的推移减少抖动
        wobbleAmountToAddX = Mathf.Lerp(wobbleAmountToAddX, 0, Time.deltaTime * (Recovery));
        wobbleAmountToAddZ = Mathf.Lerp(wobbleAmountToAddZ, 0, Time.deltaTime * (Recovery));
        // 做一个减小摆动的正弦波
        pulse = 2 * Mathf.PI * WobbleSpeed;
        wobbleAmountX = wobbleAmountToAddX * Mathf.Sin(pulse * time);
        wobbleAmountZ = wobbleAmountToAddZ * Mathf.Sin(pulse * time);
        // 修改着色器参数
        rend.material.SetFloat("_WobbleX", wobbleAmountX);
        rend.material.SetFloat("_WobbleZ", wobbleAmountZ);
        // 速率
        velocity = (lastPos - transform.position) / Time.deltaTime;
        angularVelocity = transform.rotation.eulerAngles - lastRot;
        // 摆动
        wobbleAmountToAddX += Mathf.Clamp((velocity.x + (angularVelocity.z * 0.2f)) * MaxWobble, -MaxWobble, MaxWobble);
        wobbleAmountToAddZ += Mathf.Clamp((velocity.z + (angularVelocity.x * 0.2f)) * MaxWobble, -MaxWobble, MaxWobble);
        // 保持最后的位置
        lastPos = transform.position;
        lastRot = transform.rotation.eulerAngles;
    }
}

星体

使用涅菲尔效果实现边缘发光,然后使用时间控制噪声节点偏移,就出现类似星星闪烁的感觉,

然后最重要的是需要做后处理设置,

首先需要安装PostProcessing包

然后需要设置相机

然后再Hierarchy面板右键Volume–Global Voume

这是会有一个Global Volume物体,首先设置Volume组件上Profule,点击New即可

然后点AddOverride,添加Tonemapping和Bloom,

设置Bloom上的Intensity和Tint即可,调整数字和颜色,

涟漪效果

这是一种图像效果,它扭曲渲染的图像,水面上的涟漪,源码位置

https://github.com/keijiro/RippleEffect

灰烬飘散(2023/7/5更新)

教你在Unity中实现模型消融化为灰烬飘散的效果

实现在模型上涂鸦的效果(2023/7/5更新)

使用Unity ShaderGraph实现在模型上涂鸦的效果,那么,纹个手吧

子弹拖尾特效(2023/7/5更新)

Unity使用ShaderGraph配合粒子系统,制作子弹拖尾特效

溶解、火灾、全息图、像素化、卡通化、简单旗帜(2023/7/5更新)

https://github.com/andydbc/unity-shadergraph-sandbox

弯路和世界弯曲效果(2023/7/8更新)

https://blog.csdn.net/qq_36303853/article/details/131604523?spm=1001.2014.3001.5501

实现2d图片多种描边效果(2023/7/9更新)

https://blog.csdn.net/qq_36303853/article/details/131624412

实现3d草随风摆动效果

https://github.com/IronWarrior/UnityGrassGeometryShader

待续

源码

后面有空我会整理好放上来

https://gitee.com/qimingzhihaonan/shader-graph

参考

【文章】:https://blog.csdn.net/m0_46378049/article/details/115000628

【文章】:https://blog.csdn.net/linxinfa/article/details/108049048

目录
相关文章
|
10月前
|
编解码 图形学
浅谈Unity之ShaderGraph学习笔记-03
每日记录自己学习unity的心得和体会
|
2天前
|
数据可视化 图形学 开发者
【实现100个unity特效之4】Unity ShaderGraph使用教程与各种特效案例(上)
【实现100个unity特效之4】Unity ShaderGraph使用教程与各种特效案例
13 0
|
3天前
【2023Unity游戏开发教程】零基础带你从小白到超神02——新建第一个项目
【2023Unity游戏开发教程】零基础带你从小白到超神02——新建第一个项目
4 0
|
2月前
|
C# 图形学
【Unity 3D】元宇宙案例之虚拟地球信息射线实战(附源码、演示视频和步骤 超详细)
【Unity 3D】元宇宙案例之虚拟地球信息射线实战(附源码、演示视频和步骤 超详细)
70 0
|
2月前
|
vr&ar C# 图形学
【Unity 3D】VR飞机拆装后零件说明功能案例实战(附源码和演示视频 超详细)
【Unity 3D】VR飞机拆装后零件说明功能案例实战(附源码和演示视频 超详细)
56 0
|
2月前
|
vr&ar C# 图形学
【Unity 3D】VR飞机动态拆装及引擎开关控制案例(附源码和演示视频 超详细)
【Unity 3D】VR飞机动态拆装及引擎开关控制案例(附源码和演示视频 超详细)
56 0
|
2月前
|
vr&ar 图形学
【Unity 3D】VR飞机起飞喷火游戏案例实战(附源码和演示视频 超详细)
【Unity 3D】VR飞机起飞喷火游戏案例实战(附源码和演示视频 超详细)
99 0
|
8月前
|
存储 运维 数据挖掘
服务器数据恢复—EMC Unity存储数据恢复案例
服务器数据恢复环境: EMC Unity某型号存储,连接了2台硬盘柜。2台硬盘柜上创建2组互相独立的POOL,2组POOL共有21块520字节硬盘。21块硬盘组建了2组RAID6,1号RAID6有11块硬盘. 2号RAID6有10块硬盘。 服务器故障&检测: 工作人员误操作,删除了2组POOL上的部分数据卷。
服务器数据恢复—EMC Unity存储数据恢复案例
|
10月前
|
关系型数据库 图形学
浅谈Unity之ShaderGraph学习笔记-05
每日记录自己学习unity的心得和体会
|
10月前
|
图形学
浅谈Unity之ShaderGraph学习笔记-04
每日记录自己学习unity的心得和体会