Unity简单的Animator用来隐藏物体

Unity中使用Animator实现物体渐显渐隐

想要加一个逐渐消失的效果,就给GameObject加了一个Animator,让物体的透明度从0.65变成0,然后消失。但是发现好像无法直接通过Animator让物体Disable掉。
然后发现Animator能添加事件,在物体上挂一个脚本,脚本里写一个Disable的函数。将这个事件的function属性选择为这个函数。
但是,能不能更简单?然后发现设置一个父物体,再设置子物体,为父物体添加Animator,Animator中让子物体透明度从0.65降到0,最后一帧将子物体的setActive设为false。可以满足要求。
然后,逐渐消失的动画倒是有了,但是,不能一进来就播放这个动画把。另外,还要控制某个时候让这个物体从不显示到显示。这样的话,就需要有个开始显示的动画,加一个Show的状态,其中包含一帧,不用循环。让物体显示的时候调用Animator的Play(“Show”)即可。
让物体隐藏的时候,判断是否是显示状态;如果是,再隐藏

 AnimatorStateInfo stateInfo = badgeAnimator.GetCurrentAnimatorStateInfo(0);
            if (stateInfo.IsName("BadgeShow"))
            {
                badgeAnimator.Play("BadgeHide");
            }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

阿拉平平的小屋

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值