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));
    }

配合的材质球如下:

相关推荐
淡海水6 小时前
12-01-YooAsset工程化-Unity资源管理规范
unity·c#·游戏引擎·yooasset
BuHuaX12 小时前
U3D抖微小游戏开发流程 (一)
unity·c#·游戏引擎·游戏策划
_ZHOURUI_H_21 小时前
Unity MyFramework 用法说明(二十三):使用 PrefabPoolManager 复用预设实例
unity·游戏引擎·游戏开发·游戏ui·手游开发
冰凌糕1 天前
Unity3D Shader 法线与基础光照
unity
新手unity自用笔记1 天前
unity网络基础_1
网络·unity·游戏引擎
谢斯2 天前
[vscode] 使用unity打开vscode的取消.csproj的显示
ide·vscode·unity
魔术师Dix2 天前
StartGame:Unity TDD 外部工程指南
学习·游戏·unity·c#·测试驱动开发
hsw8157739432 天前
第10章 软件架构的演化和维护 — 系统架构设计师
unity·系统架构·游戏引擎