各位开发者:
大家好!我们非常高兴地宣布,工作室有了一个新的动画控件。今天,我们发布 IKControl,这是一种新的实例类型,可以让您使用反向运动学(IK)在骨骼上创建逼真的程序性动画,作为工作室中的测试版。
对于那些不熟悉IK的人,反向运动学使得动画师抓住并放置运动链端,例如角色的手或脚,它将自动解决关节之间的位置和方向,以获得您想要的结果。反向运动学广泛应用于计算机动画中,以确保角色能够准确地与周围环境接触。
使用这个新的动画工具可以让您的角色实现:
- 持有武器和工具
- 接触对象、按钮、门把手等
- 将脚正确地放在地面上
- 瞄准武器
- 查看关注点
- 让两个角色握手或拥抱
- 只需移动角色的手或脚来摆姿势
开始时首先需要在工作室 Beta功能菜单中启用测试版 “IK控件” 。启用后,您就可以创建IKControl实例作为Humanoid或AnimationController的子实例,并在其上设置一些属性:
- 类型: 确定您需要的控制行为。如果您不确定,请尝试“定位”或“转换”。
- EndEffector : 您想要移动的角色的关节,例如手。
- ChainRoot : 角色中有助于移动的第一个关节,例如肩膀。必须是同一角色上EndEffector的“祖先”。
- 目标: 确定您希望角色接触的目标。
以下为文档页和指南,详细介绍了如何使用IKControl来设置这些示例,您可以在下面找到代码片段!
-您想要修改的角色。将此脚本作为您角色的子角色
local character = script.Parent
local ik = Instance.new("IKControl")
ik.Parent = character:FindFirstChildOfClass("Humanoid") -- 或 "AnimationController"
ik.Type = Enum.IKControlType.Position
ik.EndEffector = character:FindFirstChild("LeftHand", true)
ik.ChainRoot = character:FindFirstChild("LeftUpperArm", true)
ik.Target = workspace.target -- 你在自己的世界中创建的附件或BasePart
我们会先以测试版发布这项功能,以收集反馈并回答您的问题。我们将继续添加您希望看到的功能。如您有任何想法,欢迎在评论区提出!
谢谢!