Unity导出FBX模型中的动画片段

这篇具有很好参考价值的文章主要介绍了Unity导出FBX模型中的动画片段。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

导出选中的FBX中的AnimationClip文件到文件夹中文章来源地址https://www.toymoban.com/news/detail-641431.html

public class ExportAnimFromFBX : EditorWindow
{
    [UnityEditor.MenuItem("Assets/导出FBX中的Animation")]
    private static void ExportAnimation()
    {
        // SelectionMode.DeepAssets: 如果选择包含文件夹,则还包括文件层级视图中该文件夹下的所有资源和子文件夹。
        var gameObjects = Selection.GetFiltered<UnityEngine.Object>(UnityEditor.SelectionMode.DeepAssets);
        string path = "Assets/ExportAnimation/{0}.anim";

        // 创建一个存放Animation的文件夹
        if (!AssetDatabase.IsValidFolder("Assets/ExportAnimation"))
            AssetDatabase.CreateFolder("Assets", "ExportAnimation");

        List<Object> animationClips = new List<Object>();
        for (int i = 0; i <= gameObjects.Length - 1; i++)
        {
            // AnimationUtility.GetAnimationClips()方法可以检索与游戏对象或组件关联的动画剪辑数组。但是这里不适用
            // 使用AssetDatabase.LoadAllAssetsAtPath函数提取fbx中的AnimationClip,该函数接收一个路径参数,即fbx文件所在路径,然后返回一个Object类型的数组,数组中存放的是fbx文件中的所有资源
            var objs = AssetDatabase.LoadAllAssetsAtPath(AssetDatabase.GetAssetPath(gameObjects[i]));
            // 取出其中的AnimationClip
            foreach (var obj in objs)
            {
                //UnityEngine.PreviewAnimationClip是在编辑器中查看动画的临时剪辑,比如在动画曲线编辑器中(名字格式如:__preview__Take 001),你可以看到一些动画的预览剪辑。
                //UnityEngine.AnimationClip是最终实际播放的动画剪辑,该剪辑可以保存在项目中,然后由Animator或Animation组件加载并播放。
                if (obj is AnimationClip && !obj.name.Contains("__preview__"))//脚本中没有UnityEngine.PreviewAnimationClip类型, 所以这里用string.Contains判断
                { 
                    animationClips.Add(obj);
                }
            }
        }

        foreach (AnimationClip Clip in animationClips)
        {
            Object newClip = new AnimationClip();
            EditorUtility.CopySerialized(Clip, newClip);
            newClip.name = Clip.name;
            AssetDatabase.CreateAsset(newClip, string.Format(path, newClip.name));
        }
    }
}

到了这里,关于Unity导出FBX模型中的动画片段的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • FBX动画导入Unity

    1.1 第一章 Unity导入FBX模型动画但不能动 随着AR/VR等技术发展,摸一手Unity动画总是不亏的 示例:电脑自带的3d查看器点开能自动播放的fbx文件(仅作演示) 3d查看器打开fbx文件的动画示例视频 点击导入的文件→ Materials →Location中选 Use External Materials(Legacy) → Apply 点击导入的

    2024年02月05日
    浏览(48)
  • Unity导入FBX动画文件

    给刚入门的同学稍微记一下fbx格式动画导入unity的步骤: 首先直接把fbx文件拖入unity内,如图操作 将avatar骨骼创建之后,我们接下来就根据自己对动画的一些需求设置一下动画的参数,比如截取一下动画的开始帧和结束帧来达到剪切的目的,或者loop Time将动画设置为循环等等

    2024年02月11日
    浏览(60)
  • Unity 导入FBX提取材质贴图

    当我们在建模软件制作好fbx,导入Unity时,会发现fbx有自带的材质,贴图,蒙皮,网格等多种资源,但是使用起来很不方便,所以想,在向unity导入fbx之后,直接就把里边的材质和贴图提取出来,并且不是默认的 Lit ,而是其它的自己写的shader FBX导入时提取材质 当我们在Unit

    2024年02月08日
    浏览(55)
  • unity导出FBX

    unity版本:2020.2.1f1c1 1、添加Fbx Exporter的package包 2、选中一个预制体点击菜单Gameobject -- Export To Fbx 3、设置导出参数 选择Binary 而非ASCII,否则无法导入blender 真的是so easy呀~~

    2024年02月12日
    浏览(42)
  • Unity Animator获取当前播放动画片段

    Animator获取当前播放片段,获取错误,跟当前播放的片段不一致的原因。 一般使用下面API,获取当前动画机播放片段: 这里有一个机制,如果上一句代码是播放一个动画片段,下一句代码立即去获取当前播放片段信息,是获取不到的,需要等待几十ms的延迟,才能正确获取到

    2024年02月12日
    浏览(51)
  • Unity中 Prefab导出FBX

    Unity 已经在Package Manager中集合了很多实用的插件,比如这里用到的FBX Exporter. 在Unity的菜单中Window ---- Package Manager,打开包管理界面 点击设置如图下面的Advanced ... 选择该选项 在Advanced Settings 中勾上Enable Preview Package 选择   关掉窗口 选择包类型 下面的 Unity Registry 然后找到FBX

    2024年02月11日
    浏览(47)
  • 【unity】 untiy中如何导出FBX

    打开unity 菜单中Window -----Package Manager 点击下面的Adv… 勾上Enable 选择 I understand 关掉窗口 选择下面的 Unity Registry 点击安装 安装好以后 GameObject — Export To FBX…就可以了 选中你需要导出的文件 ,就可以直接导出FBX文件了 知道你存放的路径就看到了

    2024年02月15日
    浏览(48)
  • 在unity中结合FBX Exporter合并mesh并导出Fbx

    目标是把多个mesh合并成一个或者几个,降低drawcall,但是又不想标记成static的,也不想进3dmax合并的一个尝试。 首先在Window - Package Manager里安装FBX Exporter,我的unity版本是2020,2019应该也可以 安装成功后发现右键GameObject,可以导出fbx了。 接下来就是合并多个mesh 假设我有这么

    2023年04月10日
    浏览(48)
  • Unity场景素材导出为 FBX文件的方法

    一、Unity场景素材导出为 FBX文件的方法:http://t.csdn.cn/Xyjxe 二、Unity场景素材导出为 OBJ文件的方法:http://t.csdn.cn/08RY3 三、Unity地形导出为 OBJ文件的方法 (大家可以打开我的博客主页进行查看此系列其它文章) 文章目录 系列文章目录 前言 一、Unity导出FBX文件 安装插件 网盘下

    2024年02月05日
    浏览(80)
  • Unity导出FBX到blender-最后选择Binary

    1.打开文件 -window-package....  2.点右上角的设置符号-选择 advanced..... 3.打勾    4.左键选择Package:in project,选 unity registry 5.下滑找到FBX...   6.install 7.在hierarchy选择自己要导出的模型 8.在gameobject-export.....   9.跳出来这个选项选择-Binary-我也不知道为什么反正ascll导入不了blender 10

    2024年02月07日
    浏览(45)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包