交互式操控变形动画
操控变形动画与ScenceScript 结合使用还可用于创建交互式壁纸元素。在本次实例中,将讲解如何允许用户抓取和拖动单个骨骼。
交互式骨骼
这里提供了本次实例中的项目下载链接:果冻项目。

设置操控变形动画
为了实现这一点,需要将操控变形动画与SceneScript 结合使用。首先在果冻对象上创建一个操控变形动画。几何结构不需要任何特别注意。对于骨骼设置,本次实例仅包含两个骨骼:一个静态根骨骼,代表果冻对象的外部区域,另一个骨骼位于果冻对象的中心,已配置为在骨骼约束中使用弹簧模拟:

对于中心骨骼的骨骼约束,启用了弹簧物理模拟,然后启用了物理平移,并将其他所有内容保留为默认状态。这意味着我们能够移动骨骼(这就是启用物理平移的作用),并且由于它是弹簧模拟,因此当释放鼠标光标时,它将自动返回到其原始位置。
此外,为骨骼设置姓名也很重要,稍后可以在代码中引用它。在实例中,在编辑器中选择骨骼时,将起命名为MouseBone。
对于骨骼权重,中心骨骼在对象的中间获得一小块区域。在本例中,绿色区域表示鼠标光标将拖动的区域,而红色区域表示属于根骨骼的不可移动区域:

我们不需要为此示例创建任何动画,因为鼠标交互与此完全分开。
用于鼠标拖动的SceneScript代码
接下来,需要将SceneScript 代码片段分配给果冻图像层。选择图层,然后点击右上角的 眼睛图标 和锁图标旁边的齿轮图标。 您可以从下面复制粘贴代码,并检查代码注释以获取一些其他详细信息:
'use strict';
// Set the maximum distance that the bone can be dragged away
const DRAG_MAX_DISTANCE = 100;
// Set the "Name" of the bone that can be dragged as defined in puppet warp setup
const MOUSE_BONE

最低0.47元/天 解锁文章
1938

被折叠的 条评论
为什么被折叠?



