如何在XML文件中制作Unity 3D动画?

时间:2015-08-25 16:47:28

标签: c# animation unity3d scripting

我有一个GO,里面有三个立方体(GO),其中一个箭头从一个立方体到另一个立方体。

位置信息和动画来自XML文件。 读取XML文件即可。对我而言,困难在于使用XML信息进行动画制作。我没有找到一个简单的教程解释如何在脚本上动画。

任何人都可以帮助我?

以下示例:

<group name="one" start="x,y,z" end="x,y,z">
<gameobjects>
    <gameobject name="Cube1" start="x,y,z" end="x,y,z">
    <gameobject name="Cube2" start="x,y,z" end="x,y,z">
    <gameobject name="Cube3" start="x,y,z" end="x,y,z">
</gameobjects>
    <arrows>
        <arrow name="arrow1" start="x,y,z" end="x,y,z">
        <arrow name="arrow1" start="x,y,z" end="x,y,z">
    </arrows>
</group>

<group name="two" start="x,y,z" end="x,y,z">
    <gameobjects>
        ...
    </gameobjects>
    <arrows>
        ...
    </arrows>
</group>

<group name="three" start="x,y,z" end="x,y,z">
    ...
</group>

1 个答案:

答案 0 :(得分:1)

最简单的方法是使用名为DoTween的资产:http://dotween.demigiant.com/download.php

导入后,您可以像这样设置GameObjects的动画:

MyObject.transform.position = startValue;
MyObject.transform.DOMove(endValue, 3f);

您还可以链接各种命令。例如,如果你想让它轻松进出(以使动画流畅),那么你可以将第二行改为:

MyObject.transform.DOMove(endValue, 3f).SetEase(Ease.InOutSine);

如果你想在动画完成时运行一个特定的方法,那么:

MyObject.transform.DOMove(endValue, 3f).SetEase(Ease.InOutSine).OnComplete(MyMethodToRunWhenDone);

图书馆可以做的更多。在此处查看文档:{​​{3}}