unity3d - Unity:从 FBX 文件中获取每一帧的关节旋转
问题描述
我有一些动画存储在需要分析的 FBX 文件中。我需要知道每帧每个关节的localRotation
s 和s。localPosition
我目前的方法是使用 Unity 并将 FBX 文件分配给动画控制器中的状态并播放它。然后我为根关节分配一个脚本,在每次Update()
调用中我递归地读取localRotation
每个关节的,并将它们保存到一个列表中。
我现在的问题是:
我如何保证我从 FBX 中获取每一帧恰好一次?我应该使用
FixedUpdate
而不是Update
吗?我希望这个脚本不受其他并行运行的程序造成的任何负载的影响。如何获取当前播放的帧号?如何检测动画是否已结束或正在循环播放?
我只需要这个来从动画中获取关节旋转。动画实际上在屏幕上播放是不相关的。如果有更简单的方法,我也会感兴趣。我想从大约 200 个长度为 2-10 秒的 FBX 文件中提取这些信息。
我只想使用 Unity 处理文件,其他一切都将在 Python 中完成,因为我几乎没有 Unity 经验。
解决方案
推荐阅读
- node.js - 在带有 M1 芯片的 MacOS 11.6.1 上的 npm 全局安装出现问题
- r - 我需要进行数据预处理以执行以下操作:
- flutter - 在 vsCode 中运行 dart 终端
- python - 测试功能获取多个文件
- php - 如何选择使用 Laravel Sanctum 进行身份验证?
- python - Kraken API - 帐户余额请求返回 Invalid Nonce
- javascript - 如何避免 .map 跳过空格?
- logback - java 17 logback SMTPAppender: AuthenticationFailedException: 220 准备启动 TLS
- openshift - RHEL dhcp 服务器配置 10.128.0.0/14 一些节点 CoreOS 正在获取 172.x ip 地址
- sql-server - 将两个源映射到目标 SQL DB 表