소개


이상적인 움직임을 실현하기 위해서는 매개변수 조정이 필수적입니다.
여기에서는 매개변수와 깊이와 밀접한 관계가 있는 기준선 개념과 각 매개변수의 역할을 설명합니다.

 

 

 

 

기준선 이해하기


 

매개변수를 설정할 때 기준선 개념을 이해하는 것이 필수적입니다.
기준선은 프록시 메시의 고정 정점에서 시작하여 표면 연결을 따라 이동 정점까지 이어지는 경로입니다.

 

예를 들어, 다음과 같은 Transform 계층 구조가 있다고 가정합니다.

 

이 구조에서 [Fixed] 본을 시작점으로 BoneCloth를 생성하면, 기준선이 다음과 같이 할당됩니다.

 

이 기준선은 기즈모에서 [Base Line]을 활성화하면 확인할 수 있습니다.

 

MagicaCloth는 이 기준선을 따라 형태를 복원합니다.
그 결과, 2D와 같은 움직임을 유지하면서도 물리적으로 사실적인 움직임을 결합한 2.5D 스타일의 동작을 실현할 수 있습니다.

시작/끝과 깊이

기준선에는 시작점과 끝점, 그리고 깊이 정보가 포함됩니다.
이 정보는 기즈모 설정에서 [Base Line]과 [Depth]를 활성화하면 확인할 수 있습니다.
앞서 예로 든 Transform 구조를 다시 살펴보겠습니다.
흰색 숫자는 깊이를 나타내며, 시작점은 (0.0), 끝점은 (1.0)으로 설정되어 있어 각 정점이 어느 깊이에 해당하는지 확인할 수 있습니다.
이 깊이 값은 매개변수 설정에서 필수적인 지표입니다.

 

깊이는 자동으로 할당되며, (1.0)은 프록시 메시에서 가장 긴 기준선의 끝으로 설정됩니다.

BoneCloth에서의 기준선

BoneCloth에서는 기준선이 Transform 계층 구조를 기반으로 간단하게 생성됩니다.
즉, Transform 계층 구조와 동일한 방식으로 기준선이 설정됩니다.

MeshCloth에서의 기준선

MeshCloth에서는 기준선이 조금 더 복잡하게 자동 계산됩니다.
기준선은 고정 정점을 중심으로 주변 표면의 연결 상태에 따라 자동으로 생성됩니다.
예를 들어, KAGURA의 치마에서는 기준선이 자동으로 다음과 같이 형성됩니다.

 

MeshCloth의 기준선은 표면 연결 상태 및 고정 정점의 분포에 따라 다양한 방식으로 변경될 수 있다는 점을 기억하세요.

 

 

 

 

 

깊이와 매개변수의 관계


앞에서 설명한 것처럼, 기준선이 생성될 때 각 정점에 깊이가 설정됩니다.
이 정점의 깊이는 매개변수를 조정할 때 중요한 지표가 됩니다.
MagicaCloth에는 이 깊이를 기준으로 값을 결정하는 여러 매개변수가 존재합니다.

 

예를 들어, 각도를 제한하는 Angle Limit을 살펴보겠습니다.
Angle Limit은 기준선의 엣지가 휘어질 수 있는 각도를 제한합니다.
Angle Limit의 설정 패널은 다음과 같습니다.

 

현재, 곡선 설정이 꺼져 있어 깊이에 관계없이 60도로 일정하게 설정되어 있습니다.
여기에서 오른쪽의 [C] 버튼을 누릅니다.

 

그러면 인스펙터가 확장되며, 곡선을 설정할 수 있습니다.
이 기능을 사용하면 각 정점의 깊이에 따라 서로 다른 제한 각도를 설정할 수 있습니다.
설정된 곡선을 확인해 보겠습니다.

 

가로 축은 깊이(0.0 ~ 1.0), 세로 축은 매개변수의 강도(0.0 ~ 1.0) 입니다.

예제:

  • 깊이 0.0 → 강도 0.2 → 제한 각도: 60 × 0.2 = 12도
  • 깊이 0.5 → 강도 0.6 → 제한 각도: 60 × 0.6 = 36도
  • 깊이 1.0 → 강도 1.0 → 제한 각도: 60 × 1.0 = 60도

이제 앞서 설명한 BoneCloth의 깊이 개념과 결합해 보겠습니다.
각 정점의 깊이 값(0.0~1.0)은 곡선의 가로 축과 직접적으로 연결됩니다.
이것을 통해 각 정점이 받는 제한 각도가 어떻게 결정되는지 이해할 수 있습니다.

 

이처럼, 곡선 매개변수는 깊이와 연동하여 최종 값을 계산하는 방식으로 작동합니다.
이것이 깊이와 매개변수의 관계입니다.
또한, 모든 매개변수 패널에서 [C] 버튼이 있는 경우, 이 개념이 동일하게 적용된다는 점을 기억하세요.

 

 

 

 

매개변수 유형


여기에서는 실제로 존재하는 매개변수를 유형별로 소개합니다.
각 매개변수의 기능을 자세히 설명하면 페이지 수가 방대해지므로, 여기에서는 매개변수의 개요와 설정 가이드라인에 중점을 둡니다.
매개변수에 대한 자세한 내용은 별도의 컴포넌트 참조를 확인하세요.

 

Force

 

중력(Gravity) 및 공기 저항(Damping)과 같은 힘을 제어합니다.
약간의 중력을 추가하면 움직임이 보다 현실적으로 보입니다.
공기 저항을 낮추면 정점이 쉽게 멈추지 않으며, 반대로 공기 저항을 높이면 상단이 천천히 움직이게 됩니다.
Gravity Falloff는 천의 방향에 따라 중력의 영향을 감소시킵니다.
예를 들어, Falloff가 1.0이면 천이 초기 자세와 같은 각도를 유지할 경우 중력이 적용되지 않습니다.

 

Angle Restoration

 

기준선의 각 엣지를 원래 위치로 회전시킵니다.
이 Angle Restoration은 움직임을 제어하는 가장 중요한 매개변수입니다.
움직임의 대부분이 여기에서 결정된다고 해도 과언이 아닙니다.


Stiffness는 한 번의 패스에서 수정되는 회전 각도의 크기입니다.
값을 높이면 복원 속도가 빨라집니다.


Velocity Attenuation은 복원 과정에서 정점에 적용되는 속도 감쇠량입니다.
이 값을 낮추면 가속도가 강해지면서 스프링처럼 튕기는 움직임이 발생합니다.


이 두 속성을 조정하는 것은 일정한 숙련도가 필요합니다.
먼저 프리셋을 로드하여 참고하는 것이 좋은 시작점입니다.

 

Angle Limit

 

기준선의 각 엣지가 원래 자세에서 휘어질 수 있는 각도를 제한합니다.
앞머리처럼 너무 많이 구부러지지 않도록 할 때 효과적입니다.
치마의 각도를 일정 범위 내로 제한하여 형태를 유지하는 것도 좋은 방법입니다.

 

Shape Restoration

 

프록시 메시의 형태를 유지하기 위해 세 가지 동작을 수행합니다.

매개변수 설명 추가 정보

Distance 메시의 신축성을 조절하며, 각 정점과 연결된 정점 간의 거리를 일정하게 유지함. 기본적으로 1.0이 적당하며, 회전하는 치마처럼 외곽이 늘어나 보이도록 설정할 경우 곡선을 사용하여 끝부분의 복원력을 약하게 조정 가능.
Tether 정점이 기준선의 시작점에 얼마나 가까워질 수 있는지를 제한함. Compression 값을 낮추면 정점이 시작점에 가까워질 수 없음. 값을 높이면 정점이 자유롭게 이동 가능. 일반적으로 0.8 이상 설정 후 필요에 따라 조정하는 것이 권장됨.
Triangle Bending 메시가 구부러지는 저항을 조절하여 인접한 삼각형을 원래 각도로 되돌리려는 역할을 함. 메시의 형태 유지에 중요한 역할을 하며, 보통 1.0으로 설정하면 충분함. 프록시 메시에 삼각형이 없는 경우 설정할 필요 없음.

 

Inertia

 

캐릭터의 움직임과 애니메이션이 Cloth에 미치는 영향을 제어합니다.
예를 들어, 캐릭터가 움직일 때 천이 과도하게 흔들린다면 이 값을 낮춰 흔들림의 영향을 줄일 수 있습니다.


Inertia는 월드 관성(World Inertia)과 로컬 관성(Local Inertia)으로 나뉘며, 각각 캐릭터의 이동과 애니메이션에 연동됩니다.


또한 캐릭터가 순간 이동했을 때 이를 감지하여 시뮬레이션을 리셋하거나 그대로 유지할지를 선택할 수 있습니다.


자세한 내용은 Inertia 페이지를 참고하세요.

 

Movement Limit

 

프록시 메시 정점의 법선 방향으로 이동을 제한합니다.
이것을 Backstop이라고도 합니다.


위의 다이어그램을 참고하여 작동 방식을 확인하세요.
간단히 말해, 정점은 MaxDistance 범위 내에서만 이동할 수 있으며, BackstopCollision 바깥으로는 나갈 수 없습니다.


예를 들어, T셔츠의 모든 정점 법선이 인체 바깥쪽을 향하고 있다고 가정합니다.
이때, Backstop 기능을 사용하여 정점이 법선의 반대 방향으로 일정 거리 이상 들어가지 못하도록 제한할 수 있습니다.
이 기능을 이용하면 충돌 콜라이더 없이도 T셔츠가 인체 내부로 파고드는 것을 방지할 수 있습니다.
같은 원리로 앞머리가 머리 내부로 들어가는 것을 방지할 수도 있습니다.


중요한 점은 이 값이 프록시 메시의 정점 법선을 기준으로 계산된다는 것입니다.
렌더 메시의 법선과는 관계가 없습니다.
또한 이 제한의 기준이 되는 정점 위치와 법선 방향은 시뮬레이션 실행 전에 스킨된 프록시 메시의 포즈에서 가져옵니다.
그리고 프록시 메시의 법선도 조정할 수 있습니다.


Backstop 설명은 다소 길어지므로, 자세한 내용은 Backstop 설명 페이지를 참고하세요.

 

Collider Collision

 

가장 자주 사용되는 충돌 감지 방식으로, Sphere 및 Capsule과 같은 콜라이더를 이용하여 Cloth가 인체 내부로 파고드는 것을 방지합니다.
자세한 내용은 충돌 감지 설정 페이지를 참고하세요.

 

Self Collision

🚧베타 버전🚧

 

Cloth 자체가 스스로와 충돌하는 Self-Collision을 설정할 수 있으며, 다른 Cloth 오브젝트와의 충돌을 방지하는 Mutual Collision도 설정할 수 있습니다.


Self-Collision을 활성화하면 천 자체가 위 이미지처럼 충돌 감지를 수행합니다.
그러나 Self-Collision은 대량의 충돌 계산을 필요로 하므로 성능 부하가 매우 높습니다.
따라서 데스크톱 PC나 고성능 콘솔에서만 사용하는 것이 권장됩니다.


또한 Self-Collision은 현재 베타 기능으로, 향후 동작 방식과 설정이 변경될 가능성이 있습니다.
자세한 내용은 Self-Collision 전용 페이지를 참고하세요.

 

Spring

 

고정 속성을 가진 정점에 스프링 효과를 적용합니다.
이 기능은 캐릭터의 가슴 흔들림 같은 효과를 구현하는 데 적합합니다.
Spring 패널은 BoneSpring에서만 사용할 수 있습니다.

 

 

 

 

튜닝 팁


지금까지 각 매개변수의 역할을 설명했습니다. 모든 작업은 이상적인 움직임에 가까워지도록 반복적인 시행착오를 거치는 것입니다. 그러나 이 작업은 매우 어렵기 때문에 몇 가지 조정 팁을 소개합니다.

 

중요한 매개변수부터 조정하기

매개변수의 수는 많지만, 실제로 움직임을 결정하는 것은 몇 가지 항목뿐입니다. 우선 아래 항목부터 조정해 보세요.

매개변수 설명

Force 중력(Gravity) 및 공기 저항(Damping). 정점의 움직임과 크게 관련됨.
Angle Restoration 회전 복원. 전체적인 움직임을 결정하는 가장 중요한 매개변수. 가장 먼저 조정하는 것이 좋음.
Inertia 캐릭터가 뛰거나 달릴 때 천이 과도하게 움직이면 여기에서 조정.

 

실시간 조정 활용하기

매개변수는 실행 중에도 인스펙터에서 조정할 수 있습니다. 실제로 게임을 플레이하면서 조정하면 시행착오 과정이 더 쉬워집니다.

 

프리셋 활용하기

 

프리셋은 매개변수를 설정하는 가장 빠른 방법입니다. 먼저 프리셋을 로드하여 원하는 움직임과 비슷한지 확인하세요. 만약 이상적인 움직임과 유사한 프리셋이 있다면, 개별 매개변수를 조정하여 시간을 절약할 수 있습니다.

 

프리셋 저장하기

매개변수는 쉽게 원본 프리셋으로 저장할 수 있습니다.

 

공들여 조정한 매개변수를 프리셋으로 저장하세요. 저장된 프리셋은 Preset 버튼에서 간단하게 불러올 수 있으며, 이를 활용하면 비슷한 움직임을 설정할 때 많은 작업을 줄일 수 있습니다. 실행 중에도 프리셋 저장이 가능합니다.

 

 

컴포넌트 복사 기능 활용하기

 

조정 작업에서 가장 번거로운 점은 실행 중에 인스펙터에서 조정한 내용이 실행 종료 후 모두 초기화된다는 것입니다. 이를 방지하려면 컴포넌트 복사 기능을 활용하세요!
이 기능은 실행 중에 컴포넌트의 “︙” 버튼을 눌러 인스펙터의 내용을 복사하는 기능입니다.

 

실행 중에 매개변수 조정이 성공적으로 완료되었다면, 이 기능을 사용하여 내용을 복사합니다.
그리고 실행이 끝난 후, 컴포넌트의 “︙” 메뉴에서 Paste를 선택하면 실행 중에 설정한 매개변수를 그대로 복원할 수 있습니다.

 

이 작업을 통해 실행 중에 조정한 매개변수를 실행 종료 후에도 인스펙터에서 유지할 수 있습니다.

 

 

 

 

다음 단계는?


지금까지 MagicaCloth의 기본적인 설정 방법을 설명했습니다.
이제까지의 내용을 적용하면 대부분의 Cloth 설정이 가능합니다.
따라서 너무 복잡한 작업이 아니라면, 추가적인 가이드를 읽을 필요가 없습니다.

그러나 아직 백스톱(Backstop) 및 자체 충돌(Self-Collision) 설정과 같은 몇 가지 기능을 자세히 다루지 않았습니다.
이에 대해 더 알고 싶다면 다른 가이드를 계속 참고하세요.

'유니티 에셋 > Magica Cloth 2' 카테고리의 다른 글

백스톱 (Backstop)  (0) 2025.03.02
버텍스 페인팅 방법  (0) 2025.03.02
충돌 감지 설정  (0) 2025.03.02
BoneSpring을 사용하는 방법  (0) 2025.03.02
MeshCloth 사용 방법  (0) 2025.03.01

+ Recent posts