SmartKinematics Settings
SmartKinematics 는 inverse kinematics(아래부터 IK라고 함)과 함께 작동하여 복잡한 joint 구조로 objects를보다 쉽게 포즈하고 애니메이션 할 수 있습니다. SmartKinematics는 사람, 동물 또는 joint이 많은 기계와 같은 복잡한 움직임을 재현 할 수있는 강력한 방법을 제공합니다.
경고 SmartKinematics는 Shade3D Standard 및 Professional에 포함되어 있습니다.
Attribute Settings (속성 설정)
SmartKinematics를 사용하는 경우 IK를 사용하여 joints에 적합한 속성을 설정해야합니다.
Applying Attributes to Joints
- ShadeExplorer의 Presets 및 Documentation-Supplemental Manual 폴더에서 "smartkinematics01_setup.shd"를 찾아서 엽니 다.
- Browser가 열려 있지 않으면 View > Browser를 선택하여 지금 표시하십시오.
- View > SmartKinematics를 선택하십시오.
SmartKinematics Window가 열립니다.
SmartKinematics
- "|Body" joint를 선택하고 SmartKinematics Window의 Root group에서 Apply 버튼을 클릭하십시오.
Root 속성이 "| Body"관절에 적용되고 "| Body : Root (SmartKinematics)"가 Browser에 표시됩니다.
SmartKinematics
- "|Left Ankle "| Right Ankle"을 동시에 선택하고 SmartKinematics Window의 Goal group에서 Apply 버튼을 클릭하십시오.
Goal attribute은 "|Left Ankle"및 "|Right Ankle" joints에 모두 적용되며 "|Left Ankle : Goal(SmartKinematics)"및 "|Right Ankle : Goal(SmartKinematics)"가 Browser에 표시됩니다.
SmartKinematics
- "|Body:
Root(SmartKinematics)"joint를 선택한 상태에서 control bar의 왼쪽에있는 Editing Mode
버튼을 클릭하여 Editing Mode를 Joint mode로 전환하십시오. Manipulator controls을 끌어
joint을 이동합니다.
"|Left Ankle"및 "|Right Ankle"joints의 위치는 제한되며 robot ankles은 항상 원래 위치 (제한 조건이 적용된 위치)를 향합니다.
- 작업을 취소하려면 Edit > Undo를 선택하십시오.
- Toolbox의 Part tab에서 Ball Joint를 선택하고 각 foot에 대해 toes와 heel에 하나씩 두 개의 ball joint를 만듭니다.
- Browser에서 작성한 ball joints를 다음 위치에 배치합니다.
- "|
Left Ankle : Goal (SmartKinematics)"및 "| Right Ankle : Goal
(SmartKinematics)"내에 배치 한 4 개의 ball joints를 모두 선택하고 SmartKinematics 창의
End group에서 Apply 버튼을 클릭합니다.
End attribute가 ball joint에 적용되고 "Ball Joint : End(SmartKinematics)"가 Browser에 표시됩니다. - "|Body: Root(SmartKinematics)"joint를 선택한 상태에서 Editing Mode를 Joint mode로 전환하고 manipulator controls을 클릭하고 끌어 joint를 이동합니다.
"|Left Ankle : Goal(SmartKinematics)"와 "|Right Ankle : Goal(SmartKinematics)"joints은 구속되어 있으며 로봇이 움직일 때 각 발의 발목과 발목 사이의 위치 관계가 유지됩니다.
- 작업을 취소하려면 Edit > Undo를 선택하십시오.
- 왼발 발가락에서 "Ball Joint : End(SmartKinematics)"을 선택하고 Editing Mode를 Joint로 전환 한 다음 manipulator controls을 클릭하고 드래그합니다.
로봇의 몸체는 왼쪽 발가락의 볼 조인트쪽으로 "당겨져"있습니다.
아 래 설명에서 루트, 목표 및 끝 속성(Root, Goal, and End attributes)이 적용된 관절을 각각 루트 관절, 목표 관절 및 끝 관절(root joints, goal joints, and end joints)이라고합니다.
Deleting Attributes
joints에서 attributes을 삭제하려면 attributes을 삭제하려는 joint을 선택하고 SmartKinematics 창에서 Delete Attribute 버튼을 클릭하십시오.
SmartKinematics |
---|
속성이 이미 설정된 joint에 다른 속성을 적용하려면 먼저 이전 속성을 삭제 한 다음 새 속성을 적용하십시오.
Inverse Kinematics Advanced Settings
SmartKinematics를 사용하면 필요에 따라 IK의 동작을 조정할 수 있습니다.
Controlling Joint Constraints
Goal joints의 IK 제약 조건을 제어하는 몇 가지 방법이 있습니다.
이 기능은 IK chain을 전체적으로 오프셋 할 때 동작에 영향을 미치지 않습니다. 아래 각 방법의 동작 차이를 살펴 보겠습니다.
- ShadeExplorer의 Presets 및 Documentation-Supplemental Manual 폴더에서 "smartkinematics02_snap.shd"를 찾아서 엽니다.
- View > SmartKinematics를 선택하여 SmartKinematics Window를 여십시오. Browser가 열려 있지 않으면 View > Browser를 선택하여 지금 표시하십시오.
-
Browser에서 Root Part을 제외한 모든 항목을 선택하고 SmartKinematics 창에서 Inverse
Kinematics 그룹의 Enable 확인란을 선택하십시오. 다음으로, Constraint of Selected Joints
pop-up menu에서 Standard을 선택하십시오.
- "Left Knee"을 선택한 상태로 Toolbox의 Create tab에서 Move 버튼을 클릭하십시오. Joint Operation 팝업 메뉴에서 "| Left Leg"를 선택하십시오.
- 발목에 IK constraints이 적용되며 무릎과 허벅지의 움직임은 발가락과 발 뒤꿈치의 위치에 의해 제한됩니다.
- Edit > Undo를 선택하여 실행을 취소합니다.
- 다음으로 SmartKinematics window의 선택된 Constraint of Selected Joints pop-up menu에서 Half를 선택하십시오.
SmartKinematics - "Left Knee"joint를 선택한 상태에서 Toolbox의 Create tab에서 Move 버튼을 클릭하십시오.
무릎과 허벅지의 움직임은 제한되지 않지만 발목 아래에서는 발가락과 발 뒤꿈치 사이의 원래 각도가 유지됩니다.
- Edit > Undo를 선택하여 실행을 취소합니다.
- 다음으로, SmartKinematics 창의 Constraint of Selected Joints pop-up menu에서 Free를 선택하십시오.
SmartKinematics - "Left Knee" joint를 선택한 상태에서 Toolbox의 Create tab에서 이동 버튼을 클릭하십시오. Joint Operation 팝업 메뉴에서 "| Left Leg"를 선택하십시오.
무릎과 허벅지의 움직임은 제한이 없으며 발목 아래는 고정되어 있습니다.
Preserving the End Angle
Walking figure의 발에 애니메이션을 적용 할 때와 같이 엔드 조인트의 원래 위치를 유지하지 않으려는 경우에도 목표 조인트 아래의 조인트가 어떻게 이동하는지 지정할 수 있습니다.
동일한 끝 각도를 유지하는 것과 유지하지 않는 것의 동작의 차이를 살펴 보겠습니다.
- ShadeExplorer의 Presets 및 Documentation-Supplemental Manual 폴더에서 "smartkinematics02_snap.shd"를 찾아서 엽니다.
- View > SmartKinematics를 선택하여 SmartKinematics Window를 엽니다.
Browser가 열려 있지 않으면 View > Browser를 선택하여 지금 표시하십시오. - Browser
에서 Root Part를 제외한 모든 항목을 선택하고 SmartKinematics window에서 Inverse
Kinematics group의 Enable 확인란을 선택합니다. 그런 다음 Preserve End Angle 확인란을
선택하십시오.
SmartKinematics - "|Body: Root(SmartKinematics)" joint를 선택한 상태에서 Editing Mode를 Joint mode로 전환하고 manipulator controls을 클릭하고 끌어 joint를 이동합니다.
신체의 움직임이나 회전에 관계없이 발목은 발의 각도를 유지하는 방식으로 움직입니다.
중요 End engle을 유지하려면 두 개 이상의 end joints가 필요합니다.
- Edit > Undo를 선택하여 작업을 취소합니다.
- 이제 SmartKinematics window에서 Preserve End Angle checkbox(확인란)을 선택 해제하십시오.
SmartKinematics - "|Body:
Root(SmartKinematics)" joint를 선택한 상태에서 Editing Mode를 Joint mode로
전환하고 manipulator controls을 클릭하고 끌어 joint를 이동합니다.
발이 땅을 떠날 때 발목 관절은 발가락과 발 뒤꿈치의 원래 위치를 향합니다.
IK Snap
IK Snap은 IK를 자동으로 조정하고 특정 허용 오차 내에있을 때 end joint를 지면에 스냅하는 데 사용됩니다. 공차(지면 위의 높이)는 원하는 값으로 지정할 수 있습니다. IK Snap은 지면과의 정확한 접촉이 중요한 보행 동작 애니메이션에 유용합니다.
IK Snap은 Inverse Kinematics가 비활성화되어 있거나 (Enable 확인란이 선택되어 있지 않은 경우) 또는 Constraint of Selected Joints pop-up menu가 Free로 설정된 경우 활성화됩니다.
- ShadeExplorer의 Presets 및 Documentation-Supplemental Manual 폴더에서 "smartkinematics02_snap.shd"를 찾아서 엽니다.
- Select View > SmartKinematics를 선택하여 SmartKinematics Window를 엽니다.
Browser가 열려 있지 않으면 View > Browser를 선택하여 지금 표시하십시오. - Browser에서 Root Part을 제외한 모든 항목을 선택하고 SmartKinematics Window에서 Inverse Kinematics group의 Enable checkbox를 선택 취소합니다.
- 계
층 구조에서 "|Body : Root(SmartKinematics)" joint 또는 그 아래에있는 object를 선택하고
SmartKinematics 창에서 IK Snap 그룹의 Enable 확인란이 선택되어 있는지 확인합니다.
SmartKinematics - "Left
Knee" joint를 선택한 상태에서 Toolbox의 Create tab에서 Move 버튼을 클릭하십시오. Joint
Operation 팝업 메뉴에서 "Left Knee"를 선택하고 Figure Window를 클릭 한 후 끌어서 이동하십시오.
발가락과 발 뒤꿈치에 위치한 end joint가 지면의 1/2 grid unit 내에 있으면 지면의 레벨에 스냅됩니다.
- Edit > Undo을 선택하여 작업을 취소합니다.
- "Left
Ankle"을 선택한 상태로 Toolbox의 Create tab에서 Move 단추를 클릭하십시오. Joint Operation
pop-up menu에서 "Left Ankle"을 선택하고 Figure Window에서 클릭하고 드래그하여 이동하십시오. 무릎과
허벅지의 회전은 발가락 또는 발 뒤꿈치 end joint(가장 가까운 쪽)이 항상 지면에 닿도록 조정됩니다.
Correcting Unnatural Animation
Cleanup function은 motion points 사이의 보간에 의해 발생하는 부자연스러운 보행 motion(발이 '슬립'하는 것처럼 보임)을 수정하는 데 사용됩니다.
애 니메이션 수정을위한 올바른 위치 오프셋을 계산하려면 애니메이션을 설정 한 후 SmartKinematics window에서 Calculate 버튼을 통해 Cleanup function을 실행해야합니다. 정리를 실행 한 후 애니메이션을 수정 한 경우 애니메이션을 다시 실행하여 calculation을 업데이트하십시오.
- ShadeExplorer의 Presets 및 Documentation-Supplemental Manual 폴더에서 "smartkinematics03_cleanup.shd"를 찾아서 엽니 다.
- View > SmartKinematics를 선택하여 SmartKinematics Window를 실행합니다.Browser가 열리지 않은 경우 View > Browser를 선택하여 지금 실행하십시오.
- "|Body : Root(SmartKinematics)" joint를 선택하고 SmartKinematics 창에서 Cleanup group의 Enable 버튼이 선택되어 있지 않은지 확인하십시오.
SmartKinematics - Motion Window는 View > Motion를 선택하여 엽니다.
- Motion Window에서 Play 버튼을 클릭하여 애니메이션을 미리 봅니다. Motion points 사이에서 발이 미끄러져 지면 아래로 가라 앉는 것을 볼 수 있습니다.
- 이제 SmartKinematics Window의 Cleanup에서 Enable 버튼을 클릭하십시오.
SmartKinematics - IMotion Window에서 모든 motion points를 선택합니다.
- SmartKinematics Window에서 Cleanup 아래에 있는 Calculate button을 클릭하십시오.
SmartKinematics - Motion Window에서 Play 버튼을 클릭하여 애니메이션을 미리 봅니다. 발의 위치가 제한되어 더 이상 'slip'되지 않습니다.
그러나 이제 점프 애니메이션이 이상하게 보입니다.
- Motion Window에서 motion points 10-12 (frames 85-95) 점프가 시작되는 곳을 선택합니다.
- SmartKinematics Window의 Cleanup group에 있는 Disable 버튼을 클릭합니다.
SmartKinematics - Motion Window에서 Play 버튼을 클릭하여 애니메이션을 다시 미리보십시오. Cleanup을 비활성화 한 기간에는 제약 조건이 적용되지 않으며 이동이 처음부터 끝까지 올바르게 보입니다.