由于模型是由第三方的软件制作的,用unity不能直接编辑模型里的动画文件(read-ony),比如为动画绑定事件,所以要把模型中的动画文件抽取出来,这样文件是可写的了。

usingUnityEditor;usingUnityEngine;usingSystem.IO;publicclassCurvesTransferer{[MenuItem("Character Generator/Transfer Clip Curves to Copy")]staticvoidCopyClip(){foreach(Object oinSelection.GetFiltered(typeof(Object), SelectionMode.DeepAssets)){if(!(oisGameObject))continue;if(!o.name.Contains("@"))continue;GameObject animationFBX = (GameObject)o;AnimationClip srcClip = animationFBX.animation.clip;AnimationClip newClip =newAnimationClip();newClip.name = srcClip.name;// Create directory to store generated materials.if(!Directory.Exists(AnimationsPath(animationFBX)))Directory.CreateDirectory(AnimationsPath(animationFBX));stringanimationPath = AnimationsPath(animationFBX) + newClip.name +".anim";AssetDatabase.CreateAsset(newClip, animationPath);AssetDatabase.Refresh();AnimationClipCurveData[] curveDatas = AnimationUtility.GetAllCurves(srcClip,true);for(inti = 0; i < curveDatas.Length; i++){AnimationUtility.SetEditorCurve(newClip, curveDatas[i].path, curveDatas[i].type, curveDatas[i].propertyName, curveDatas[i].curve);}}}// Returns the path to the directory that holds the specified FBX.staticstringCharacterRoot(GameObject character){stringroot = AssetDatabase.GetAssetPath(character);returnroot.Substring(0, root.LastIndexOf('/') + 1);}// Returns the path to the directory that holds materials generated// for the specified FBX.publicstaticstringAnimationsPath(GameObject character){returnCharacterRoot(character) +"Copy Animations/";}}

转载文章,原作者没找到,如有侵权,请站短

unity从模型中抽取动画文件(animation)相关推荐

  1. 从exe4j生成的exe中抽取jar文件

    2019独角兽企业重金招聘Python工程师标准>>> 从exe4j生成的exe中抽取jar文件 博客分类: java 现在网络上越来越流行.net和java写的客户端的小应用程序, ...

  2. css情景动画,css3中的动画属性animation应用场景及编写代码教程

    讲解一下css3中的动画属性animation应用场景及编写代码教程 以下讨论的是和css3 动画 属性 animation 相关的css3中的动画属性animation应用场景及编写代码教程教程文章 ...

  3. 三 Laya3D 加载资源 (场景/预设/模型网格/材质/动画文件/贴图/粒子)

    参考: 资源概述 一 常用资源类型 场景 .ls 预设 .lh 模型网格 .lm 材质 .lmat 动画文件 .lani 贴图  .jpg .png .ltc等 二  场景加载 下面加载XunLong ...

  4. 使用AMDU工具从无法MOUNT的DISKGROUP中抽取数据文件

    AMDU是ORACLE针对ASM开发的源数据转储工具,其全称为ASM Metadata Dump Utility(AMDU) AMDU具体以下三个主要功能: 1. 将ASM DISK上的元数据转储到文 ...

  5. 图像识别模型中图片标注文件的txt和xml类型相互转换

    图像识别学习记录 一.TXT to XML 二.XML to TXT 最近学习图像识别在训练模型时需要将不同模型需要的标注格式来回批量转换,本文介绍了2种方法可以将XML和TXT标注信息相互转换. 网 ...

  6. 导入Unity的模型在播放动画时手脚会轻微晃动(抖动)

    1.针对Animation Type 为 Generic的动画的解决方案 解决方案一: 将Rotation Error置为 0, 这样应该就是对动画的旋转不进行压缩 解决方案二: Anim.Compr ...

  7. Unity自动提取优化Fbx模型动画文件,并生成ab包文件大小对比信息

    参考文章:https://cloud.tencent.com/developer/article/1833109 最近项目需求需要对工程中的动画文件进行优化,经分析发现,工程存在两种动画文件,一种是后 ...

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

    最近遇到一个问题,cutscene剧情动画文件大了复杂了之后,每次修改输出很麻烦,导出fbx就需要20分钟. 所以我想到了一个比较好的解决方法,在unity这边解决.把动画文件拆分成若干份,然后赋予不 ...

  9. Unity(三十七):3D模型动画、脚本控制模型骨骼IK动画

    效果(左侧模型动画,右侧模型IK控制) 模型动画下载及导入 推荐模型动画下载链接地址 https://actorcore.reallusion.com/ Unity导入教程参见以下链接地址(需要科学上 ...

最新文章

  1. 第二百一十一天 how can i 坚持
  2. asp.net 中文编码问题
  3. 将gitLab 上的dev分支拉取到本地
  4. W4_python_decorator_generator_Iteratable_Iterator_json_pickle
  5. PS图片后期之超简易造光调色方法
  6. JPA的继承 OOD和关系数据库的 纽带
  7. 数组的基本操作(1)
  8. 如何使用PowerShell保护密码
  9. w3school离线手册
  10. 【计算机视觉】人脸识别--人脸识别技术综述
  11. vs2017 安装MFC
  12. 理财 股票 K线分析
  13. 电视机当计算机屏幕,电视机能不能当电脑显示器?告诉你正确答案
  14. HDU 2608 0 or 1 简单数论
  15. 多台路由器连接,实现全网可达
  16. 微软让草稿几秒钟变App,还推出了个像Mac Mini的迷你台式机 | Build 2022
  17. 被字句15个_小学语文必考知识:15类句式转换解题方法与练习(附答案)
  18. LeetCode43------两数相乘
  19. 不同类型的钻展图怎么设计?
  20. weka之数据集学习

热门文章

  1. 客户需求,针对24006, 24008, 24024默认支持VOLTE和Vowifi
  2. 火焰传感+蜂鸣器的火焰报警实验
  3. kubevirt 部署 vmi
  4. javaBean与Map之间的转换工具
  5. FLIR Systems获得美国陆军士兵随身传感器项目价值3960万美元的“黑黄蜂”个人侦察系统合同
  6. C语言基础教程_动态内存申请
  7. 【眇视万里一毫端】全志V853三核异构边缘AI视觉处理芯片全新发布
  8. VisionMaster与优傲机器人 UR5e 进行Modbus通讯
  9. 玩客云刷安卓及armbian安装docker部署Homeassistant
  10. 怀旧服哪个服务器不显示经验值,魔兽世界怀旧服出现刷级bug,一个小时一级,简简单单...