스프링 조인트(Spring Joint)
휠 콜라이더

천(Cloth)

Cloth 컴포넌트는 스킨드 메시 렌더러와 함께 작동하여 직물을 시뮬레이션하는 물리 기반 솔루션을 제공합니다. 이 컴포넌트는 캐릭터의 옷에 사용하도록 특별히 고안되었고 스킨드 메시만 이 컴포넌트와 함께 사용할 수 있습니다. Cloth 컴포넌트를 스킨드 메시가 아닌 메시에 추가하면 해당 메시가 제거되고 스킨드 메시가 추가됩니다.

Cloth 컴포넌트를 스킨드 메시에 연결하려면 에디터에서 게임 오브젝트를 선택한 후 인스펙터 창에서 Add Component 버튼을 클릭하고 Physics > Cloth 를 선택합니다. 컴포넌트가 인스펙터에 표시됩니다.

프로퍼티

프로퍼티: 기능
Stretching Stiffness 천이 늘어나는 강도를 설정합니다.
Bending Stiffness 천이 접히는 강도를 설정합니다.
Use Tethers 제약을 적용하여 움직이는 천 파티클이 고정된 파티클로부터 너무 많이 떨어지지 않도록 합니다. 이렇게 하면 천이 지나치게 늘어나는 것을 방지할 수 있습니다.
Use Gravity 천에 중력 가속도를 적용할지 여부를 설정합니다.
Damping 모션 댐핑 계수를 나타냅니다.
External Acceleration 천에 적용되는 불변의 외부 가속입니다.
Random Acceleration 천에 적용되는 불규칙적인 외부 가속도입니다.
World Velocity Scale 월드 공간에서 캐릭터의 움직임이 천 버텍스에 얼마나 영향을 미치는지를 설정합니다.
World Acceleration Scale 월드 공간에서 캐릭터의 가속이 천 버텍스에 얼마나 영향을 미치는지를 설정합니다.
Friction 캐릭터와 충돌할 때 천의 마찰을 나타냅니다.
Collision Mass Scale 충돌하는 파티클의 질량을 얼마나 증가시킬지 설정합니다.
Use Continuous Collision 연속 충돌을 활성화하여 충돌 안정성을 높입니다.
Use Virtual Particles 삼각형당 하나의 가상 파티클을 추가하여 충돌 안정성을 높일 수 있습니다.
Solver Frequency 솔버의 초당 반복 횟수를 나타냅니다.
Sleep Threshold 천의 휴면 임계값(sleep threshold)을 나타냅니다.
Capsule Colliders 천 인스턴스가 충돌할 캡슐 콜라이더의 배열을 나타냅니다.
Sphere Colliders 천 인스턴스가 충돌할 ClothSphereColliderPairs의 배열을 나타냅니다.

세부 정보

천은 씬 안의 모든 콜라이더와 반응하지는 않으며, 월드에 힘을 다시 가하지도 않습니다. Cloth 컴포넌트가 추가되더라도 다른 바디에 영향을 주거나 반응하지 않습니다. 그러므로 Cloth 컴포넌트에 콜라이더를 수동으로 추가해야 비로소 천과 월드가 서로를 인식하거나 볼 수 있습니다. 콜라이더를 추가한 후에도 시뮬레이션은 여전히 단방향으로 일어납니다. 즉, 천은 다른 바디에 반응은 하지만 다른 바디에 힘을 가하지는 못합니다.

또한 천에는 구체, 캡슐, 원뿔형 캡슐 콜라이더(두 개의 스피어 콜라이더로 구성)의 세 가지 타입의 콜라이더만 사용할 수 있습니다. 이러한 제약은 모두 성능 향상을 위한 것입니다.

제약 도구 편집

Edit > Constraints 를 선택하여 천 메시의 각 버텍스에 적용되는 제약을 편집할 수 있습니다. 모든 버텍스는 현재 시각화 모드에 따라 각 버텍스 값의 차이를 나타내는 컬러로 표시됩니다. 천 제약을 브러시로 천에 색칠하는 방법으로 제약을 적용할 수 있습니다.

프로퍼티: 기능
Visualization 최대 거리(Max Distance) 또는 표면 관통(Surface Penetration) 값에 따라 씬 뷰에서 도구의 시각적 외형을 변경합니다. 후면 조작 토글도 사용할 수 있습니다.
Max Distance 하나의 천 파티클이 버텍스 포지션으로부터 움직일 수 있는 최대 거리를 나타냅니다.
Surface Penetration 천 파티클이 메시를 얼마나 깊이 관통할 수 있는지 설정합니다.
Brush Radius 제약을 천에 색칠하여 적용할 때 사용하는 브러시의 반지름을 설정합니다.
스킨드 메시 렌더러에서 사용 중인 천 제약 도구
스킨드 메시 렌더러에서 사용 중인 천 제약 도구

두 가지 모드로 각 버텍스의 값을 변경할 수 있습니다.

  • Select 모드를 사용하여 버텍스 그룹을 선택할 수 있습니다. 이렇게 하려면 마우스 커서를 사용하여 선택 상자를 그리거나 버텍스를 한 번에 하나씩 클릭합니다. 그런 다음 Max Distance 또는 Surface Penetration 을 활성화하거나 둘 모두를 활성화한 후 값을 설정할 수 있습니다.

  • Paint 모드를 사용하여 개별 버텍스를 직접 조절할 수 있습니다. 이렇게 하려면 조절할 버텍스를 클릭합니다. 그런 다음 Max Distance 또는 Surface Penetration 을 활성화하거나 둘 모두를 활성화한 후 값을 설정할 수 있습니다.

두 가지 모드에서 Max DistanceSurface Penetration 에 값을 지정하면 씬 뷰에 바로 업데이트되어 나타납니다.

색칠 모드의 천 제약 도구
색칠 모드의 천 제약 도구

자체 충돌 및 상호 충돌

천 충돌을 사용하면 게임에서 캐릭터의 옷과 기타 직물이 더 사실적으로 움직입니다. Unity 에디터에는 천 충돌을 처리하는 여러 천 파티클이 있습니다. 다음과 같은 목적으로 천 파티클을 설정할 수 있습니다.

  • 자체 충돌. 천이 자신을 관통하는 것을 방지합니다.
  • 상호 충돌. 천 파티클이 서로 충돌할 수 있습니다.

천의 충돌 파티클을 설정하려면 천 인스펙터에서 Self Collision and Intercollision 버튼을 선택합니다.

천 인스펙터의 자체 충돌 및 상호 충돌 버튼
천 인스펙터의 자체 충돌 및 상호 충돌 버튼

Cloth Self Collision And Intercollision 창이 씬 뷰에 나타납니다.

천 자체 충돌 및 상호 충돌 창
천 자체 충돌 및 상호 충돌 창

Cloth 컴포넌트가 있는 스킨드 메시에서는 천 파티클이 자동으로 표시됩니다. 처음에는 천 파티클이 충돌하지 않도록 설정되어 있습니다. 이렇게 사용되지 않는 파티클은 검정색으로 나타납니다.

사용되지 않는 천 파티클
사용되지 않는 천 파티클

자체 충돌 또는 상호 충돌을 적용하려면 충돌을 적용할 파티클 세트를 하나 선택해야 합니다. 충돌을 적용할 파티클 세트를 선택하려면 Select 선택 버튼을 클릭합니다.

천 파티클 선택 버튼
천 파티클 선택 버튼

이제 마우스 왼쪽 버튼을 클릭한 채로 움직여 충돌을 적용할 파티클을 선택합니다.

클릭 및 드래그로 천 파티클 선택
클릭 및 드래그로 천 파티클 선택

선택된 파티클이 파란색으로 표시됩니다.

파란색으로 표시된 선택된 천 파티클
파란색으로 표시된 선택된 천 파티클

Self Collision and Intercollision 체크박스를 선택하여 충돌을 선택된 파티클에 적용합니다.

자체 충돌 및 상호 충돌 체크박스
자체 충돌 및 상호 충돌 체크박스

충돌하도록 적용한 파티클은 녹색으로 표시됩니다.

녹색으로 표시된 선택된 파티클
녹색으로 표시된 선택된 파티클

천의 자체 충돌 동작을 활성화하려면 천 인스펙터 창에서 Self Collision 섹션으로 이동하여 DistanceStiffness 를 영(0)이 아닌 값으로 설정합니다.

자체 충돌 파라미터
자체 충돌 파라미터
프로퍼티: 기능
Distance 각 파티클을 둘러싸는 구체의 지름입니다. Unity 에디터는 시뮬레이션 중에 이런 구체가 겹치지 않도록 합니다. Distance 는 설정에서 입력한 두 파티클 사이의 최소 거리보다 작아야 합니다. 거리가 더 크면 자체 충돌이 일부 거리 제약을 위반하게 되어 지터링이 발생할 수 있습니다.
Stiffness 파티클에 가해지는 분리 충격력이 얼마나 쎈지 설정합니다. 천 솔버가 이 연산을 담당하며, 파티클이 분리된 상태를 유지할 정도로 충분해야 합니다.

자체 충돌 및 상호 충돌을 모두 시뮬레이션하려면 많은 시간이 소요될 수 있습니다. 충돌 거리를 작게 유지하고 자체 충돌 인덱스를 사용하여 서로 충돌하는 파티클 수를 줄이는 것이 좋습니다.

자체 충돌에는 삼각형이 아닌 버텍스가 사용되므로 천 두께보다 훨씬 큰 삼각형이 있는 메시에서 자체 충돌이 완벽하게 작동할 것이라고는 기대하지 마십시오.

PaintErase 모드에서는 마우스 왼쪽 버튼을 누른 채로 개별 천 파티클을 드래그하여 충돌에 사용할 파티클을 추가하거나 제거할 수 있습니다.

자체 충돌 파라미터
자체 충돌 파라미터

Paint 또는 Erase 모드에서는 충돌하도록 지정된 파티클은 녹색으로, 아무 것도 지정되지 않은 파티클은 검정색으로, 브러시 밑에 놓여진 파티클은 파란색으로 표시됩니다.

파란색으로 표시된 색칠 중인 파티클
파란색으로 표시된 색칠 중인 파티클

천 상호 충돌

상호 충돌 파티클은 위에서 설명한 자체 충돌 파티클을 지정하는 방법과 같은 방법으로 지정할 수 있습니다. 자체 충돌과 마찬가지로 상호 충돌 파티클 세트를 하나 선택해야 합니다.

To enable intercollision behavior, open the Physics settings (from the main menu in Unity: Edit > Project Settings, then select the Physics category) and set Distance and Stiffness to non-zero values in the Cloth InterCollision section:

Enable intercollision behavior in the Physics settings
Enable intercollision behavior in the Physics settings

천 상호 충돌의 DistanceStiffness 프로퍼티는 위에서 설명한 자체 충돌의 Distance 및 Stiffness 프로퍼티의 기능과 같습니다.

콜라이더 충돌

천은 임의의 월드 지오메트리와 그냥 충돌할 수 없으며, 캡슐 콜라이더 또는 스피어 콜라이더 배열에서 지정된 콜라이더하고만 상호작용합니다.

스피어 콜라이더 배열은 하나의 유효한 SphereCollider 인스턴스를 포함하거나(두 번째 인스턴스는 null), 또는 두 개의 인스턴스를 포함할 수 있습니다. 전자의 경우, ClothSphereColliderPair는 천이 충돌할 하나의 스피어 콜라이더를 나타냅니다. 후자의 경우에는 두 개의 구에 의해 정의되는 원뿔형 캡슐 형태를 나타내며, 이때 두 개의 구는 원뿔로 연결됩니다. 원뿔형 캡슐은 캐릭터의 팔다리를 모델링할 때 유용합니다.


  • 2017–12–05 일부 편집 리뷰를 거쳐 페이지 수정됨

  • Unity 2017.3에서 천 자체 충돌 및 상호 충돌 추가됨 NewIn20173

스프링 조인트(Spring Joint)
휠 콜라이더