솔버

솔버를 사용하여 다양한 IK 릭 구성을 생성합니다.

Choose your operating system:

Windows

macOS

Linux

IK 릭(IK Rig)은 폭넓은 본 계층구조에 영향을 미치는 다양한 IK 솔버(IK Solver)를 지원합니다. 솔버는 체인에서 본을 회전 및 배치하는 역운동학(Inverse Kinematic) 솔루션을 생성하기 위해 사용되며, 다수의 솔버를 동시에 사용하면 IK 이펙트를 한층 더 커스터마이징할 수 있습니다.

이 페이지는 IK 릭 에디터 내에 추가할 수 있는 여러 솔버에 대한 개요와 그 프로퍼티를 제공합니다.

전제조건

  • IK 릭 에셋을 생성하고 연 상태여야 합니다. 그 방법은 IK 릭 에디터 페이지를 참고하세요

  • IK 목표 생성 방법을 잘 알고 있어야 합니다.

솔버 생성하기

솔버를 생성하는 주요 방법은 솔버 스택(Solver Stack) 패널에서 새 솔버 추가(Add New Solver) 를 클릭하고 솔버 를 선택하는 것입니다.

새 솔버 추가

IK 릭에 솔버가 없는 경우 IK 목표(IK Goal) 를 생성하면 솔버도 생성할 수 있으며, 이 솔버는 목표에 자동으로 바인딩됩니다. 솔버를 선택하려면 솔버 타입(Solver Type) 드롭다운 메뉴를 클릭합니다.

디폴트 솔버 추가

솔버 사용

모든 IK 솔버에는 루트 본(root Bone) 이나 IK 목표 또는 둘 다를 지정해야 합니다. 이 시작 본과 끝 본이 해당 솔버에 대한 IK 체인을 완성합니다.

루트 본 목표 본

  1. 계층구조 체인의 시작에 있는 루트 본.

  2. 계층구조 체인의 끝에 있는 목표 또는 이펙터 본. IK 목표에 의해 유도됩니다.

본과 목표 연결하기

루트 본을 솔버로 설정하려면 계층구조 에서 을 선택하고 솔버 스택 에서 솔버 를 선택한 다음 을 우클릭하고 선택된 솔버에 루트 본 설정(Set Root bone on Selected Solver) 을 선택합니다.

선택된 솔버에 루트 본 설정

솔버에 IK 목표가 필요하다면 계층구조 에서 목표 를 선택하고 솔버 스택 에서 솔버 를 선택한 다음 목표 를 우클릭하고 목표를 선택된 솔버에 연결(Connect Goal to Selected Solver) 을 선택합니다.

목표를 선택된 솔버에 연결

본과 목표를 솔버에 연결한 다음 솔버를 선택하면, 연결한 본과 목표가 계층구조와 뷰포트에서 하이라이트됩니다.

본 하이라이트

다수의 솔버

솔버 스택에 다수의 솔버를 추가하여 IK 릭에 부가 기능을 제공할 수 있습니다. 솔버는 이름 옆의 번호 순서대로 평가되므로 솔버가 다수라면 순서가 중요합니다.

다수의 솔버

예를 들어 대부분의 다리 IK 구성에서는 둔부의 트랜스폼 솔버 설정(Set Transform Solver) 이 림 IK 다리의 림 IK 체인보다 먼저 평가되게 해야 합니다. 그래야 둔부가 먼저 움직인 뒤 다리가 거기 어울리게 움직일 수 있습니다.

솔버 실행 순서

솔버 스택에서 솔버를 위아래로 드래그하여 재배열할 수 있습니다.

솔버 재배열

본 제외하기

IK 체인 내의 본을 계층구조에서 제외하여 모든 솔버가 이를 무시하게 할 수 있습니다. 이러면 잘못된 포즈를 수정하거나 복잡한 체인을 간소화할 때 유용합니다.

본을 제외하려면 제외할 모든 을 선택한 다음 우클릭하고 선택된 본을 솔브에서 제외(Exclude Selected Bone From Solve) 를 클릭합니다. 제외한 본은 다른 아이콘으로 표시됩니다.

선택된 본을 솔브에서 제외

본을 우클릭하고 선택된 본을 솔브에 포함(Include Selected Bone In Solve) 을 선택하여 다시 포함시킬 수 있습니다.

솔버 타입

다음은 IK 릭에서 사용 가능한 여러 솔버 목록입니다.

바디 무버

바디 무버(Body Mover) 솔버 는 연결된 IK 목표(보통 발)의 위치에 기반하여 루트 본을 이동 및 회전합니다. 바디 무버를 사용하면 IK 릭이 바디에 대규모 움직임을 생성하여 최종 포즈가 더 자연스러워집니다.

구성

바디 무버가 작동하려면 루트 본과 최소 2개의 IK 목표가 연결되어 있어야 합니다. 그러나 캐릭터가 사족 보행하거나 다리가 여러 개인 경우 여러 개의 목표를 지원할 수도 있습니다.

사용

바디 무버는 주로 지면 정렬을 목적으로 하며, 림 IK 또는 풀 바디 IK 등 다른 솔버와 쌍을 이루어 첫 번째 솔버로 사용되어야 합니다.

예를 들어 바디 무버 하나만 사용한다면 IK 솔버로서 올바르게 보이는 결과를 생성하지 않습니다.

바디 무버 솔버

그러나 바디 무버 이후 다른 IK 솔버를 구성 및 평가하고, 적절한 세팅을 적용하면 바디 무버는 더 자연스럽게 기능합니다.

바디 무버 솔버

세팅

바디 무버 솔버를 선택하면 디테일 패널에 추가 세팅이 표시됩니다.

바디 무버 세팅

이러한 세팅은 채널을 비롯한 위치와 회전 축에서 실행되는 움직임의 정도를 제어하는 데 사용됩니다. 일부 경우에는 포즈가 더 자연스러워 보이도록 프로퍼티를 조정해야 할 수도 있습니다.

예를 들어 인간형 캐릭터의 회전 알파(Rotation Alpha)0 으로 세팅하면 캐릭터가 오프셋 목표 쪽으로 부자연스럽게 기울어질 수 있습니다.

바디 무버 회전 고정

그러나 사족 보행하거나 다리가 여러 개인 생물의 경우 이 루트 회전을 유지하고 세팅을 변경하지 않는 편이 더 자연스럽습니다.

바디 무버 거미

목표 세팅

바디 무버 솔버에 할당된 목표 아래 있는 목표 세팅(Goal Setting) 을 선택하면 디테일(Detail) 패널에 추가 프로퍼티가 나타납니다.

바디 무버 목표 세팅

영향력 배수(Influence Multiplier) 는 이 목표가 바디 무버 솔버에 미치는 영향을 키우거나 줄이는 데 사용합니다. 한 목표가 다른 목표보다 더 큰 영향을 미치게 하고자 할 때 유용합니다.

림 IK

림 IK는 퍼포먼스가 더 저렴한 단일 체인 IK 솔버를 제공합니다. 보통 팔이나 다리 등 개별 팔다리에 사용합니다.

구성

림 IK가 기능하려면 루트 본과 단일 IK 목표가 필요합니다. 일반적인 IK 규칙에 따라 시작 본인 루트와 끝 본인 목표를 지정해야 합니다. 이 솔버가 제대로 작동하려면 체인에 최소 3개의 본이 있어야 합니다.

대부분의 경우 어깨 또는 을 루트로 지정하고 을 목표로 지정합니다. 다리의 경우 다리 위쪽 또는 허벅지 를 루트로 지정하고 을 목표로 지정합니다.

림 IK

세팅

솔버 스택(Solver Stack) 패널에서 림 IK(Limb IK) 를 선택하면 디테일(Detail) 패널에 추가 프로퍼티가 나타납니다. 이러한 프로퍼티는 림 IK 체인이 3개 이상의 본으로 구성된 경우에만 유효합니다. 따라서 일반 인간형 허벅지(Thigh) > 다리(Leg) > 발(Foot) 솔브를 사용하는 경우 이러한 프로퍼티는 행동에 영향을 주지 않습니다.

림 IK 세팅

이름

설명

루트 본(Root Bone)

이 림 IK 솔버에 할당된 루트 본입니다.

도달 정밀도(Reach Precision)

이 값은 이펙터가 목표 위치에 도달하는 정확도의 한계치를 제어합니다. 값이 작을수록 정확하고 값이 높을수록 부정확합니다.

힌지 회전 축(Hinge Rotation Axis)

솔버 체인의 노멀 평면입니다.

최대 반복작업(Max Iterations)

이 값을 높이면 조인트 체인이 목표 위치에 더욱 잘 수렴하지만 림 IK 체인의 CPU 비용이 높아집니다.

제한 활성화(Enable Limit)

루트와 이펙터 사이 조인트 체인의 회전 제한을 활성화합니다.

최소 회전 각도(Min Rotation Angle)

제한 활성화(Enable Limit) 가 설정된 경우 부모 본과 자손 본 간에 적어도 이만큼의 입력 각도는 강제로 적용됩니다.

평균 풀(Average Pull)

조인트 체인을 따라 평균 풀 분포를 활성화합니다.

분포 당기기(Pull Distribution)

평균 풀(Average Pull) 이 비활성화된 경우 체인을 따라 분포 당기기의 가중치를 수동으로 제어합니다. 값이 작을수록 이펙터에, 값이 높을수록 루트에 가중치를 둡니다.

도달 스텝 알파(Reach Step Alpha)

엔드 이펙터를 타깃 쪽으로 이동하고 디스플레이스먼트를 제한합니다.

트위스트 교정 활성화(Enable Twist Correction)

체인을 따라 본의 오리엔테이션을 비교하여 솔버 체인을 따르는 트위스트 교정을 활성화합니다.

끝 본 전방 축(End Bone Forward Axis)

트위스트 교정 활성화(Enable Twist Correction) 가 설정된 경우 사용할 축입니다.

풀 바디 IK

풀 바디 IK(FBIK)는 여러 목표에 대해 폭넓은 기능을 갖추고 본 제한, 강성, 선호 각도를 지원하는 IK 솔버입니다. 이 솔버는 다수의 목표가 각각 전체 바디에 자연스러운 영향력을 행사하는 대규모 IK 시스템을 생성할 때 유용합니다.

구성

풀 바디 IK가 기능하려면 루트 본과 최소 하나의 IK 목표를 연결해야 합니다. 그러나 림 IK와는 달리 다수의 목표를 추가하여 스켈레톤이 다수의 위치에 동시에 도달하게 할 수 있습니다.

풀 바디 IK와 다수의 목표

사용

FBIK를 사용하면 다른 솔버와 달리 솔버의 영향을 받는 어떤 본에든 세팅을 생성할 수 있습니다. 이는 FBIK 체인 내에서 특정 본의 움직임을 더욱 세밀하게 조정하기 위한 것입니다.

본 세팅을 생성하려면 풀 바디 IK 솔버를 선택하고 세팅을 생성할 을 우클릭한 다음 선택된 본에 세팅 추가(Add Settings to Selected Bone) 를 선택합니다.

풀 바디 IK 본 세팅

계층구조에서 본 세팅을 선택하면 디테일 패널에 다음과 같은 본 세팅이 표시됩니다.

풀 바디 IK 본 세팅

본 세팅

설명

강성(Stiffness)

회전 강성(Rotation Stiffness)위치 강성(Position Stiffness) 프로퍼티는 IK 체인에서 얼마나 많은 본이 목표와 이펙터의 영향을 받는지를 제어하는 데 사용됩니다. 이러한 프로퍼티를 사용하여 골반 본이 컨트롤의 움직임에 영향을 받는 정도를 변경합니다. 값이 0 이면 본의 움직임이 완전히 자유롭고, 1 이면 움직임이 완전히 고정됩니다.

이 인간형 캐릭터의 예시에서는 골반 본이 FBIK 체인의 루트 본으로 지정되어 있지만, 기본 상태로는 너무 급격하게 회전하고 있습니다. 강성 프로퍼티를 높이면 이 문제를 해결할 수 있습니다.

FBIK 강성

제한(Limits)

제한 은 IK 체인의 본 축이 회전하는 범위를 제한하거나 완전히 고정하는 데 사용됩니다. 각 축은 다음 중 하나로 설정될 수 있습니다.

  • 자유(Free) 는 본의 자유로운 움직임을 허용합니다.

  • 제한됨(Limited) 은 지정 범위 내의 움직임만 허용합니다. 이 항목을 선택하면 최소/최대(Min/Max) 프로퍼티를 사용하여 움직임의 범위를 정의합니다.

  • 고정(Locked) 은 해당 축의 움직임을 비활성화합니다.

제한을 사용하면 부자연스러운 조인트 움직임을 수정하는 데 도움이 됩니다. 예를 들어 이러한 제한을 사용하면 부자연스러운 발목 회전 문제를 고칠 수 있습니다. 최소 Z-50 으로, 최대 Z40 으로 설정하고, Z 축을 제한 으로 설정합니다.

FBIK 제한

선호 각도(Preferred Angles)

선호 각도 는 특정 축의 조인트 회전을 우선하여 이펙터에 보내는 데 사용됩니다. 경우에 따라 조인트 회전에서 발생하는 경직 문제를 해결하는 데 사용할 수 있습니다. 선호 각도 사용(Use Preferred Angles) 을 활성화하면 회전이 선호 각도(Preferred Angles) 를 참조합니다.

선호 각도 프로퍼티는 캐릭터 타입 및 조인트 구조에 따라 지정합니다. 이 예시에서는 마네킹의 무릎이 Z축 을 따라 더 구부러져야 하므로 Z 프로퍼티를 늘립니다.

선호 각도

세팅

풀 바디 IK 솔버를 선택하면 다음 프로퍼티가 디테일 패널에 표시됩니다.

FBIK 세팅

이름

설명

반복작업(Iteration)

이 값을 높이면 이펙터가 목표 위치에 수렴하지만 FBIK 체인의 CPU 비용이 높아집니다. 강성 외에도 높은 질량 배수(Mass Multiplier)회전 제한 또한 수렴에 영향을 미치므로 이 값을 더 조정해야 할 수도 있습니다.

질량 배수(Mass Multiplier)

본이 회전과 이동에 저항하는 정도에 영향을 미치는 글로벌 값입니다. 일반적인 값 범위는 0.0 ~ 10.0 사이이며, 0.0 이면 완전히 느슨하고 10.0 이면 강성이 매우 높습니다. 이 값을 높여 수렴을 달성하려면 반복작업 역시 높여야 합니다.

질량 배수 값을 높이면 크기가 큰 캐릭터에서 특히 자주 발생하는 FBIK 내의 심각한 집중 문제를 해결할 수 있습니다.

질량 배수 트위칭 수정

최소 질량 배수(Min Mass Multiplier)

솔버가 안정적인 결과를 제공하는 한 이 값은 최대한 낮게 유지합니다. 값이 낮으면 체인의 수렴율이 개선됩니다.

스트레치 허용(Allow Stretch)

활성화하면 IK 체인의 본이 이펙터에 닿기 위해 이동합니다. 위치 강성 값이 이 결과에 영향을 미치며, 강성이 높아지면 스트레치가 줄어듭니다.

루트 행동(Root Behavior)

루트 본의 이동 행동을 제어합니다. 다음 옵션 중에서 선택할 수 있습니다.

  • 끌기 전(Pre Pull) 은 목표의 평균 모션으로 루트의 이동을 제한합니다. 더 나은 수렴으로 모든 목표에 도달하는 데 도움이 됩니다.

  • 입력에 고정(Pin to Input) 은 루트의 이동과 회전을 고정합니다. 또한 루트 본에 적용된 모든 본 세팅을 취소합니다.

  • 자유(Free) 는 본이 자유롭게 또는 모든 본 세팅에 따라 이동하게 합니다. 이 세팅은 끌기 전 에 비해 수렴을 달성하기 위한 반복작업이 더 많이 필요합니다.

입력 포즈에서 솔브 시작(Start Solve from Input Pose)

활성화하면 솔버가 매 틱마다 리셋되어 현재 입력 포즈에서 시작됩니다. 비활성화하면 들어오는 애니메이팅된 포즈가 무시되며 솔버가 이전 솔브 결과부터 시작됩니다.

목표 세팅

풀 바디 IK 솔버에 할당된 목표 아래 있는 목표 세팅(Goal Setting) 을 선택하면 디테일(Detail) 패널에 목표의 추가 프로퍼티가 나타납니다.

FBIK 목표 세팅

이름

설명

세기 알파(Strength Alpha)

이 프로퍼티는 IK 체인에 대한 이펙터의 인플루언스 세기에 영향을 줍니다. 값이 작을수록 이 IK 목표는 체인을 강하게 당기지 않으므로, 다른 목표가 우선순위가 됩니다.

체인 당기기 알파(Pull Chain Alpha)

0.0 을 초과하는 값으로 설정하면, FBIK 솔버가 스켈레톤을 '체인'으로 파티셔닝하며, 체인은 이펙터에서 가장 가까운 스켈레톤 계층구조 분기로 확장됩니다. 이 세팅을 사용하면 희소 본 체인의 결과를 개선할 수 있지만, 컨스트레인된 비교적 복잡한 본에는 바람직하지 않은 결과를 초래할 수 있습니다.

핀 회전(Pin Rotation)

이펙터 트랜스폼 회전(1.0)과 입력 본 회전(0.0) 사이의 이펙터 본 회전을 블렌딩합니다.

폴 솔버

폴(Pole) 솔버는 단일 본 체인에 대한 폴 벡터(Pole Vector) 컨트롤을 제공하며, 이는 중간 조인트가 팔꿈치나 무릎 등의 IK 목표를 향하게 하는 데 사용됩니다. 일반적으로 이 솔버는 림 IK 등 다른 솔버와 함께 사용됩니다.

구성

폴 솔버는 다른 솔버와 달리 루트 본 끝 본을 반드시 지정해야 합니다. 그러려면 루트 본과 끝 본을 우클릭하고 선택한 솔버에서 루트/끝 본 설정(Set Root/End Bone on Selected Solver) 을 선택합니다. 이 예시에서는 윗팔을 루트로, 손을 끝으로 설정했습니다.

폴 솔버

폴 벡터 역할을 할 IK 목표도 사용해야 합니다. 대부분의 경우 루트의 첫 번째 자손 본에 대해 생성합니다.

예를 들어 단순한 본 3개 체인의 경우 루트의 첫 번째 자손 본에 IK 목표를 생성해야 합니다. 그러면 중간 조인트에 배치됩니다.

폴 솔버와 본 3개 체인

더 긴 체인에서는 첫 자손이 중간 조인트가 아니므로 IK 목표가 루트에 더 가깝게 위치합니다.

폴 솔버와 본 5개 체인

루트, 끝, 목표가 지정되면 IK 목표를 조작하여 폴 솔버를 프리뷰할 수 있습니다.

폴 솔버

사용

대부분의 경우 폴 솔버는 다른 솔버와 짝을 지어 사용하고 폴 솔버를 가장 마지막에 실행해야 합니다. 이 예시에서는 IK 림 솔버와 짝을 지었습니다.

다른 솔버와 짝지은 폴 솔버

트랜스폼 설정

트랜스폼 설정은 본을 이동 및 회전하여 목표와 일치시킵니다. 이 솔버는 단일 본과 자손을 이동 및 회전시키기만 하기 때문에 IK 시스템을 사용하지 않습니다. 이 솔버가 보다 복잡한 IK 이펙트를 달성하려면 대부분의 경우 다른 것과 짝을 이뤄야 합니다.

구성

이 솔버에는 트랜스폼 포인트로 사용할 단일 IK 목표만 연결하면 됩니다.

트랜스폼 솔버 설정

사용

일반적으로 이 솔버를 다른 솔버와 짝지어 사용하고 트랜스폼 설정을 마지막에 실행하는 것이 좋습니다. 이 예시에서는 둔부의 트랜스폼 설정(Set Transform) 과 다리의 림 IK 를 짝지었습니다.

다수 솔버의 트랜스폼 설정