Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/unity3d/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Unity3d 如何更改动画片段长度?_Unity3d - Fatal编程技术网

Unity3d 如何更改动画片段长度?

Unity3d 如何更改动画片段长度?,unity3d,Unity3d,问题是它很短。动画正在行走。但是动画长度很短,我想延长行走时间 选择行走动画时,我看到它是只读的: 选择后,我可以更改时间,但剪辑本身仍然很短: 复制所有关键帧,制作新的动画剪辑,及时将其拖出 如何: 通过围绕所有这些关键帧拖动选取框并复制它们,可以选择每个关键帧 然后使用下拉列表中的“创建新剪辑…”选项创建一个新的动画剪辑,该选项将当前剪辑显示为只读 在新剪辑中,确保时间轴为0,并超过所有关键帧 现在再次选择所有关键帧,再次使用选框选择,并抓住末端的控制柄,它应该是一条从时间线顶部到底部的

问题是它很短。动画正在行走。但是动画长度很短,我想延长行走时间

选择行走动画时,我看到它是只读的:

选择后,我可以更改时间,但剪辑本身仍然很短:


复制所有关键帧,制作新的动画剪辑,及时将其拖出


如何:

通过围绕所有这些关键帧拖动选取框并复制它们,可以选择每个关键帧

然后使用下拉列表中的“创建新剪辑…”选项创建一个新的动画剪辑,该选项将当前剪辑显示为只读

在新剪辑中,确保时间轴为0,并超过所有关键帧


现在再次选择所有关键帧,再次使用选框选择,并抓住末端的控制柄,它应该是一条从时间线顶部到底部的深蓝色垂直条纹。把这个拖到右边,你需要的地方就拖到哪里。这将对所有关键帧执行相等的时间缩放。

要使导入模型中的动画可编辑,请选择模型,展开内部资源,选择动画,然后按Ctrl+D(在mac上可能是Cmd+D?)复制动画剪辑。Unity将在您的资产中创建一个单独的副本,然后该副本将是可编辑的


然而,对于这种特殊情况,我建议循环动画(你希望角色到达门,她在动画中根本不会走那么远)。否则,如果您真的只想使剪辑“更长”,可以在Animator中调整播放速度。添加剪辑后,选择其节点,您将在inspector中看到一个可调节的速度。

对于ease类型的关键帧,这种方法有点问题。。。他们不一定能很好地保持身材。转到曲线编辑器查看此问题。。。你说的“它很短”是什么意思?@Draco18s我通常想做的是,角色开始坐着,然后站起来,然后开始走出门,然后停止环顾四周,再次回到房间。我有所有的动画,但问题是我如何从他们建立一个剪切场景。例如,如果行走动画剪辑长度仅为2-3秒,他将无法到达门口。@Draco18s也许我应该使用cinemachine?听起来是个主意。那样做。现在你有一个XY问题:X,你想让角色走到门口。Y、 行走动画只有一个循环(如果可以扩展的话!)。正确的解决方案:不要使用动画工具让动画播放多次。