我一直遇到将Maya导出的.dae文件导入Unity3D的问题。
动画有几个关键帧(大约20个),可以在下面的.dae片段中看到
<animation>
<source id="Idle_RHD-translate-animation-inputY">
<float_array id="Idle_RHD-translate-animation-inputY-array" count="13">
0.000000 0.066667 9.933333 10.000000 19.966667 24.433333 28.766667 28.833333 33.200000 36.433333 40.500000 43.900000 53.333333</float_array>
<technique_common>
<accessor source="#Idle_RHD-translate-animation-inputY-array" count="13">
<param name="TIME" type="float"/>
</accessor>
</technique_common>
</source>
<source id="Idle_RHD-translate-animation-outputY">
<float_array id="Idle_RHD-translate-animation-outputY-array" count="13">
1.602632 1.602632 0.183871 0.183871 -0.009894 -0.009894 0.541865 0.541865 -0.057921 -0.321000 -0.459515 -0.211902 1.602632</float_array>
<technique_common>
<accessor source="#Idle_RHD-translate-animation-outputY-array" count="13">
<param name="Y" type="float"/>
</accessor>
</technique_common>
</source>
<source id="Idle_RHD-translate-animation-intanY">
<float_array id="Idle_RHD-translate-animation-intanY-array" count="13">
0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 -0.244109 -0.038415 -0.039776 0.227513 0.000000</float_array>
<technique_common>
<accessor source="#Idle_RHD-translate-animation-intanY-array" count="13">
<param name="Y" type="float"/>
</accessor>
</technique_common>
</source>
<source id="Idle_RHD-translate-animation-outtanY">
<float_array id="Idle_RHD-translate-animation-outtanY-array" count="13">
0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 -0.180752 -0.048316 -0.033255 0.631237 0.000000</float_array>
<technique_common>
<accessor source="#Idle_RHD-translate-animation-outtanY-array" count="13">
<param name="Y" type="float"/>
</accessor>
</technique_common>
</source>
<source id="Idle_RHD-translate-animation-interpolationY">
<Name_array id="Idle_RHD-translate-animation-interpolationY-array" count="13">
BEZIER BEZIER BEZIER BEZIER BEZIER BEZIER BEZIER BEZIER BEZIER BEZIER BEZIER
BEZIER BEZIER</Name_array>
<technique_common>
<accessor source="#Idle_RHD-translate-animation-interpolationY-array" count="13">
<param type="name"/>
</accessor>
</technique_common>
</source>
<sampler id="Idle_RHD-translate-animationY">
<input semantic="INPUT" source="#Idle_RHD-translate-animation-inputY"/>
<input semantic="OUTPUT" source="#Idle_RHD-translate-animation-outputY"/>
<input semantic="IN_TANGENT" source="#Idle_RHD-translate-animation-intanY"/>
<input semantic="OUT_TANGENT" source="#Idle_RHD-translate-animation-outtanY"/>
<input semantic="INTERPOLATION" source="#Idle_RHD-translate-animation-interpolationY"/>
</sampler>
<channel source="#Idle_RHD-translate-animationY" target="Idle_RHD/translate.Y"/>
</animation>
然而,当unity获取此文件并在动画窗口中查看它时,每个帧上都有一个关键帧。这导致了动画问题。
我们不能使用帧缩减,因为这实际上会丢失动画中一些必不可少的小细节。
我们所需要的是团结阅读.dae“逐字”,完全没有变化。
有人知道怎么做吗?
答案 0 :(得分:0)
这叫做Baked Animation。 Unity需要烘焙关键帧。尝试取消选中FBX导出设置中的Bake Animation复选框。但是,如果未烘焙动画曲线,则统一将无法正确解释您的动画。