测试Animation大型动画文件拆分播放的可行性

最近遇到一个问题,动画文件大了复杂了之后,每次修改输出很麻烦,导出fbx就需要20分钟再加上unity这边的导入加起来得40分钟左右。

所以我想到了一个比较好的解决方法,在unity这边解决。把动画文件拆分成若干份,然后赋予不同的层并行播放

当要修改某个角色或者某几个角色的动画只要输出一小部分就可以了

为了测试可行性,我使用了一个跑动的模型动画进行测试,一共复制了20分,分别用多层动画(20层)和单个动画来播放,测试性能

单个动画测试结果:(消耗时间2.5毫秒左右,浮动不大比较稳定)

多层动画测试结果:(20层动画,消耗时间2.7-3.3毫秒左右,性能影响不大)

多层动画的测试代码:

void Start()
{
    var testClips = Resources.LoadAll<AnimationClip>("test");

    for (int i = 0; i < testClips.Length; i++)
    {
        anim.AddClip(testClips[i], testClips[i].name);
        anim[testClips[i].name].layer = i + 1;
    }

    for (int i = 0; i < testClips.Length; i++)
    {
        anim.Play(testClips[i].name);
    }
}

可见这么做是可行的,这样就可以把一个大的动画分成多个组来编辑,而又不影响整体预览。

时间: 2024-10-29 02:44:52

测试Animation大型动画文件拆分播放的可行性的相关文章

Android Animation学习(三) ApiDemos解析:XML动画文件的使用

可以用XML文件来定义Animation. 文件必须有一个唯一的根节点: <set>, <objectAnimator>, or <valueAnimator>三者之一. 对应的Java类是: ValueAnimator - <animator> ObjectAnimator - <objectAnimator> AnimatorSet - <set> <set>标签是可以嵌套的. <set>标签的androi

android中Animation动画的连续播放与播放完毕后停留在最后的状态

我们做安卓应用的苦逼程序员们常常会需要用到Animation也就是动画.比如做地图功能的时候.我们在手机旋转时需要根据手机重力感应来调整地图的角度,让它上面的“北”一直指向地球的北面...好多人做动画的时候会遇到这么两个难题(我也曾经遇到过):1:动画执行完了一遍后又立刻恢复到了初始状态,或者动画只能不断循环动作.[问题:我想让动画动到某个位置或转到某个角度后停在那里,该如何做呢?]2:点击按钮一.动画从0度转到了10度,我再点击按钮二.需要动画从之前的10度位置再继续转到20度.再点击按钮三.

Qt写的文件拆分和融合小工具

最近因事物需要,需要将大文件分解为几个小文件,然后就行传输,在接收端需要对接收到的小文件进行融合.因此用Qt写了这个小工具.现在奉献上这个小工具的代码和思路. 我们知道任何文件在计算机上都是二进制数据块,因此只需要使用读写二进制的形式来读取大文件,在将读取的大文件以二进制形式写入小文件,这样就可以将文件拆分了(当然这是非常简单的拆分方法,对有些文件肯定存在错误的,因为本人在这方面的知识很肤浅).同样小文件的融合就是拆分的逆过程. 在读写文件的过程中我使用的是C++标准库ifstream和ofst

Android实战简易教程-第六十三枪(动画实现唱片播放界面)

对于Android动画的使用,唱片播放是十分经典的一例,我们通过实现唱片播放效果来对Android动画进行学习,具有很高的趣味性和实用性. 1.首先我们定义一下布局文件-pan_layout.xml: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" and

实习小白::(转) cocos2d-x使用cocosStudio编辑的动画文件

1CocoStudio 简介 CocoStudio 是由 Cocos2d-x 官方推出的一个专门针对 Cocos2d-x 游戏开发的免费工具集,目前正在开发阶段,且日益完善之中!既是工具集,当然集成了现有各零零散散工具的功能,并且不断扩充,包含动画编辑器,UI编辑 器,场景编辑器和数据编辑器.具体内容及其特性欢迎访问 CocoStudio 官网 http://cocostudio.org/ .在这里,我们通过动画编辑器来快速体验一下 CocoStudio 为我们开发带来的便捷~ 2环境搭建与配置

Animation Frame动画实现应用的欢迎界面

Android欢迎界面通常的实现可以通过Animation的Frame动画实现,ViewPager可以实现滑动效果的欢迎界面.本案例介绍Animation实现图示欢迎动画效果. (1)把准备好的图片放进项目res/ drawable下. 图片有:a.jpg,b.jpg,c.jpg (2)在项目的res/drawable文件夹下面定义动画XML文件,文件名称可以自定义,如:a_frame.xml. <?xml version="1.0" encoding="utf-8&q

[Swift通天遁地]八、媒体与动画-(7)实现多个动画的顺序播放效果

本文将演示使用第三方类库,实现多个动画的顺序播放效果. 首先确保已经安装了所需的第三方类库.双击查看安装配置文件[Podfile] 1 platform :ios, '12.0' 2 use_frameworks! 3 4 target 'DemoApp' do 5 source 'https://github.com/CocoaPods/Specs.git' 6 pod 'Spring', :git => 'https://github.com/MengTo/Spring.git' 7 end

animation写动画

最近,接到项目需求,需要写大量的动画,那么怎么写呢? 动画是使元素从一种样式逐渐变化为另一种样式的效果.可以用百分比来规定变化发生的时间,或用关键词 "from" 和 "to",等同于 0% 和 100%.0% 是动画的开始,100% 是动画的完成.为了得到最佳的浏览器支持,应该始终定义 0% 和 100% 选择器. 我们知道CSS3的Animation有八个属性 animation-name animation-duration animation-delay a

transition和animation做动画(css动画二)

前言:这是笔者学习之后自己的理解与整理.如果有错误或者疑问的地方,请大家指正,我会持续更新! translate:平移:是transform的一个属性: transform:变形:是一个静态属性,可以改变元素的形状或位置,做出2d或3d效果: transition:过渡,转变:使css属性值在一段时间内平滑的变化,需要有触发条件(如hover等),是animation的简化版: animation:动画:可以设置多帧效果,然后把它们组合变换,按动画效果展示出来: 1. transition 过渡