UGUI - 使用动画来改变透明度解决

本文提供了一个解决Unity中动画资源透明度显示问题的实用脚本,适用于遇到透明度不正确情况的开发者。通过使用此脚本,可以确保动画颜色变化能够正确显示,避免因Unity UI自身可能存在的BUG导致的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  当美术给你的动画资源在unity 用代码不能播放或者播放效果不正确是很麻烦的,结果动画程序也做了。
  今天改了个动画,发现透明度不正确,有可能是UGUI自身BUG。
using UnityEngine;
using UnityEngine.UI;
using System.Collections;

public class ColorWatcher : MonoBehaviour {

    Color lastColor;
    Image img;

    #if UNITY_EDITOR
    [MultilineAttribute(2)] 
    public string readMe = "动画改变Image.color时并不会生效,\n需要用这个脚本来触发color的setter";
    #endif

    void Start () {
        img = GetComponent<Image>();
        lastColor = img.color;
    }
    void LateUpdate () {
        if (img.color != lastColor) {
            lastColor = img.color;
            img.color = new Color();
            img.color = lastColor;
        }
    }
}

把这个脚本放到 动画修改过透明度的组件上面。

解决方法来自:http://www.cnblogs.com/zhaoqingqing/p/3968818.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值