zoukankan      html  css  js  c++  java
  • Bow and Arrow Rigging in Blender

     https://www.youtube.com/watch?v=jpsd0Aw1qvA

    新建骨架,由如下图3部分组成:

    • Bone.000.Top ~ Bone.015.Top (上半部分16节骨骼)
    • Bone.016.Bot ~ Bone.031.Bot (下半部分16节骨骼)
    • Bone (弦上的骨骼)

    有了这3部分的骨架绑定到弓箭,作为父级,选择自动权重. 姿态模式下, 移动{Bone}(弦上的骨骼), 弦已经可以动了.

    适当调整上面自动生成的顶点组后, 
    进入骨架编辑模式, 再增加如下图3部分骨骼.(在绑定弓箭后再新增的骨骼,不会参与形变了,若提前建立了,要去掉这3段骨骼属性里形变的勾选.)

    添加另外3段控制骨骼,

    • Bone.Top.ik (最上方的控制骨骼)
    • BoneF (最前面的控制骨骼, 作为最初建立的3部分骨骼的父级) 
    • Bone.Bot.ik (最下方的控制骨骼)

    添加父级关系: (选择新增的3段骨骼, [Alt P] 全都清除掉父关系;)
    依次选择: Bone.Top.ik, Bone.Bot.ik, BoneF, [Ctrl P],选择保持形变.
    依次选择: Bone弦, Bone.000.Top, Bone.016.Bot, BoneF [ctrl P] 选择保持形变.

    添加约束:
    选择最上面的形变骨骼{Bone.015.top}, [shift Ctrl C] 选择 {反向动力学IK}, 目标骨骼选择:Bone.Top.ik (最上方的控制骨骼) ; 链长:16;
    选择最下面的形变骨骼{Bone.015.bot}, [shift Ctrl C] 选择 {反向动力学IK}, 目标骨骼选择:Bone.Bot.ik (最下方的控制骨骼) ; 链长:16;
    {方案1}选择最上面的控制骨骼(Bone.Top.ik), [shift Ctrl C] 选择 {限定距离Limit Distance}, 目标骨骼选择: Bone (弦上的骨骼);
    选择Bone,弦上的骨骼, 添加约束: 限制位移, Limit Location, Y 最小,最大值, 适当调整, 按照你画图的大小, 避免弦拉的过长.

    现在拉弦(姿态模式下拉骨骼{Bone}), 上半部分的弓已经可以弯曲了. 因为{方案1}我们只做了上面骨骼的限定距离. 

    {方案2} 如图添加2段骨骼
    Bone.Bot.Limit
    Bone.Bot.Rot
    [Alt P]清除各自的父级

    添加父关系
    依次选择: Bone.Bot.ik, Bone.Bot.Rot, [Ctrl P] 保持形变;
    依次选择: Bone.Bot.Limit, Bone.Bot.Rot, BoneF, [Ctrl P] 保持形变;

    添加约束:
    选择: Bone.Bot.Limit [Shift Ctrl C] 选{Limit Distance} ,骨骼选 {Bone};
    选择: Bone.Bot.Rot [Shift Ctrl C] 选{Track To} ,骨骼选 {Bone.Bot.Limit}, 勾选{目标Z};

    现在拉弦(姿态模式下拉骨骼{Bone}):
    方案1, 在拉弦时, 弓的形变有时会稍有向前方形变;
    方案2, 添加了Bone.Bot.Rot, 作为 Bone.Bot.ik的父级, 在ik形变时多了一个内部旋转轴,就不会向外形变了.

  • 相关阅读:
    LeetCode 109 Convert Sorted List to Binary Search Tree
    LeetCode 108 Convert Sorted Array to Binary Search Tree
    LeetCode 107. Binary Tree Level Order Traversal II
    LeetCode 106. Construct Binary Tree from Inorder and Postorder Traversal
    LeetCode 105. Construct Binary Tree from Preorder and Inorder Traversal
    LeetCode 103 Binary Tree Zigzag Level Order Traversal
    LeetCode 102. Binary Tree Level Order Traversal
    LeetCode 104. Maximum Depth of Binary Tree
    接口和多态性
    C# 编码规范
  • 原文地址:https://www.cnblogs.com/sztom/p/9874108.html
Copyright © 2011-2022 走看看