unity背景缓动动效

这算是一个很常见的小功能,比如我们在玩横版游戏的时候,背景动画会以一定的频率运动,其实现方式也有很多种。

比如,使用UGUI的image+animtion动画的方式,自己k桢实现。

还可以使用材质球本身的功能来实现,关键函数如下:

cs 复制代码
 public Material material;
    public float _offset;
    private int paraId;

    void Start()
    {
        material = GetComponent<Image>().material;

        paraId = Shader.PropertyToID("factor");
    }

    // Update is called once per frame
    void Update()
    {
        material.SetTextureOffset("_MainTex", new Vector2(_offset, 0));
    }

配合的材质球如下:

相关推荐
nnsix17 分钟前
Unity API 兼容的 .NET Standard 2.1 和 .NET Framework 区别
unity·游戏引擎·.net
mxwin25 分钟前
Unity Shader 制作半透明物体 使用多Pass提前写入深度的方式 避免穿模
unity·游戏引擎
nnsix2 小时前
Unity HybridCLR 笔记
笔记·unity·游戏引擎
nnsix3 小时前
Unity Addressables 笔记
unity·游戏引擎
RReality4 小时前
【Unity Shader URP】视差贴图 实战教程
ui·平面·unity·游戏引擎·图形渲染·贴图
小清兔18 小时前
Addressable的设置打包流程
笔记·游戏·unity·c#
3D霸霸21 小时前
Sourcetree 拉取新工程
数据仓库·unity
程序员正茂1 天前
Unity3d中RawImage显示视频画面偏白的解决方法
unity·视频·rawimage
mxwin1 天前
Unity SetPassCall和DrawCall的区别是什么
unity·游戏引擎·shader
电子云与长程纠缠1 天前
UE5 GameFeature创建与使用
开发语言·学习·ue5·游戏引擎