unity3D Animator 播放界面动画第一帧闪烁问题
Animator 播放一个界面动画,如果动画是把界面从屏幕外面移动到屏幕内部的时候。打开界面就会显示界面的默认位置,然后播放Animator,然后Animator在会去在第一帧矫正界面的位置。就会出现一个问题,界面会先出现闪一下,在执行动画过程。
【unity3D Animator 播放界面动画第一帧闪烁问题】这里有一个解决的办法,思路是打开界面,首先播放Animator第一帧,校正界面的位置,然后Animator enable false,最后利用协程或是其他方法在下一帧Animator enable true。经过测试,就可以解决第一帧闪界面的问题。
animator.Play(stateName);
animator.enabled = false;
animator.Update(0f);
DOTween.Sequence()
.AppendInterval(0)
.AppendCallback
(
() =>
{
animator.enabled = true;
}
)
.Play();
这里代码,先播放特定的状态,然后利用Update(0)来强制校正第一帧界面的位置。 然后利用DOTween的队列延迟一帧去回复Animator的播放。当然也可以用协程就做这个事情。
推荐阅读
- 2020年10月新番播放时间及版权信息集合
- Qt|Qt 使用QMediaPlayer播放MP3
- iOS10|iOS10 WKWebView里的视频播放转屏适配
- FFmpeg|FFmpeg 开发(07)(FFmpeg + OpenGLES 实现 3D 全景播放器)
- 使用ffmpeg制作一个ios播放器|使用ffmpeg制作一个ios播放器 一
- Android播放视频--VideoView
- python|python 媒体文件播放 脚本
- ffmpeg|从零开始仿写一个抖音App——基于FFmpeg的极简视频播放器
- 如何使用rotation-degrees手动旋转(rotate)exoplayer2播放器
- Asterisk播放mp4(5)——MP4文件解析