# 클리핑 어태치먼트

<callout>클리핑은 매우 비용이 많이 드는 작업이므로 신중하게 사용해야 합니다. [성능](#성능)을 참조하십시오.</callout>

클리핑 [어태치먼트](/spine-attachments)는 영역 및 메쉬 어태치먼트의 렌더링을 클리핑하는 데 사용되는 다각형입니다.

![](/img/blog/3.6-clipping.gif)

[가중치](/spine-weights)를 사용하여 뼈를 변형하면 클리핑 어태치먼트가 자동으로 변형될 수 있습니다.

클리핑 어태치먼트의 정점 위치는 애니메이션에서 [키를 지정](/spine-keys#변형-키)할 수 있습니다.

사용 예는 클리핑 [데모](/spine-demos#클리핑), [예제 프로젝트](/spine-examples#클리핑) 및 [팁](/spine-tips#Clipping)을 참조하십시오.

# 설정

새 클리핑 어태치먼트를 만들려면 트리에서 뼈나 슬롯을 선택한 다음, 트리 속성에서 `New...` `Clipping`을 선택합니다.

![](/img/spine-user-guide/clipping/new.png)

새 클리핑 어태치먼트가 트리에 나타난 후 [편집 모드](#편집-모드)가 자동으로 열립니다.
편집 모드 안에 [새 정점 모드](#새-정점-모드)도 자동으로 선택됩니다.

정점을 만들고 새 정점 모드를 종료한 후에는 [끝 슬롯](#끝-슬롯)을 설정해야 합니다.

# 속성

![](/img/spine-user-guide/clipping/properties.png)

`Select`, `Export`, `Name`, `Color` 및 `Set Parent` 속성은 [공통 어태치먼트 속성](/spine-attachments#공통-속성)을 참조하십시오.

## 끝 슬롯

`End slot` 속성에서는 클리핑이 끝나는 슬롯을 설정합니다. 클리핑은 클리핑 어태치먼트의 슬롯에서 시작하여 지정된 끝 슬롯에서 끝나는 드로우 오더의 모든 슬롯에 적용됩니다.

끝 슬롯은 연필 아이콘을 클릭하여 선택할 수 있습니다.

기본적으로 새 클리핑 어태치먼트의 끝 슬롯은 클리핑 어태치먼트가 들어 있는 슬롯으로 설정됩니다. 그 결과 클리핑 어태치먼트의 슬롯에서 드로우 오더의 끝까지(드로우 오더에 있는 클리핑 어태치먼트 슬롯 위의 모든 슬롯) 클리핑이 이루어집니다. 클리핑된 슬롯은 트리에서 빨간색으로 강조 표시됩니다.

![](/img/spine-user-guide/clipping/start.png)

끝 슬롯을 `gun`으로 설정한 후:

![](/img/spine-user-guide/clipping/endslot2.png)

## 클리핑 편집

`Edit Clipping` 버튼을 클릭하면 [편집 모드](#편집-모드)로 들어가며, 여기에서 클리핑 어태치먼트의 정점을 수정할 수 있습니다.

## 고정

`Freeze` 버튼을 클릭하면 현재 정점 위치에 대한 회전이 0으로, 크기 조정이 1로 설정됩니다.

클리핑 어태치먼트에는 실제로 회전이나 크기 조정이 없기 때문에 이 옵션이 가능합니다. 클리핑 어태치먼트에는 많은 정점만 있으며, 각 정점에는 위치가 있습니다. Spine에서는 다른 어태치먼트와 유사하게 조작할 수 있도록 편의상 회전 및 크기 조정 값을 제공합니다. 전체 어태치먼트에 `Rotate` 또는 `Scale` 툴이 사용될 때 회전 및 크기 조정이 조정됩니다.

클리핑 어태치먼트에는 이동도 없습니다. 표시된 이동 값은 정점의 중심입니다.

# 편집 모드

편집 모드에서는 클리핑 어태치먼트의 정점을 만들고, 수정하고, 삭제할 수 있습니다.

![](/img/spine-user-guide/clipping/create.png)

[클리핑 편집](#클리핑-편집) 버튼을 클릭하면 편집 모드로 들어갑니다. `Edit Clipping` 버튼을 다시 클릭하거나, 편집 모드 대화 상자를 닫거나, `spacebar` 또는 `escape`를 눌러 편집 모드를 언제든지 종료할 수 있습니다.

마우스 오른쪽 버튼을 클릭하면 `Create`와 `Delete` 툴 간에 전환됩니다.

## 만들기 툴

`Create` 툴을 사용하면 클릭하여 클리핑 어태치먼트의 가장자리를 따라 새 정점을 만들 수 있습니다. 드래그하여 정점을 이동합니다. 두 번 클릭하여 정점을 삭제합니다.

## 삭제 툴

`Delete` 툴을 사용하면 클릭하여 정점을 삭제할 수 있습니다. 드래그하여 정점을 이동합니다. 여러 정점은 `ctrl`(Mac의 경우 `cmd`) 키를 길게 누르거나 상자 선택으로 드래그하여 선택할 수 있습니다.

![](/img/spine-user-guide/clipping/delete.png)

## 새 정점 모드

`New` 버튼을 클릭하면 모든 정점을 삭제하고 새 정점 모드로 들어갑니다. 이 모드에서 새 정점을 만들려면 클릭하여 클리핑 어태치먼트를 정의할 수 있습니다. 정점은 드래그하여 이동하거나 두 번 클릭하여 삭제할 수도 있습니다. 정점을 완료하려면 첫 번째 정점을 클릭하여 다각형을 닫거나 `New` 버튼을 다시 클릭하여 새 정점 모드를 종료합니다.

![](/img/spine-user-guide/clipping/new-vertices.png)

# 변형 툴

클리핑 어태치먼트의 정점은 변형 툴을 사용하여 편집 모드 밖으로 이동할 수 있습니다. 전체 클리핑 어태치먼트는 다른 어태치먼트처럼 회전하고, 이동하고, 크기를 조정할 수 있습니다.

![](/img/spine-user-guide/clipping/rotate.png)

개별 정점은 드래그하여 변형 툴로 이동할 수 있습니다. 여러 정점은 `ctrl`(Mac의 경우 `cmd`) 키를 길게 누른 다음 클릭하거나 상자 선택으로 드래그하여 선택할 수 있습니다. 선택한 정점은 `spacebar` 또는 `escape`를 누르거나 빈 공간을 클릭하여 선택을 취소할 수 있습니다.

![](/img/spine-user-guide/clipping/multiple-vertices.png)

회전 또는 크기 조정에 사용되는 원점은 변경할 수 있습니다. 원이 나타날 때까지 `Rotate` 또는 `Scale` 툴의 중앙에 있는 작은 십자선 위로 마우스를 올린 다음, 원점을 원하는 위치로 드래그합니다. 원점은 자동으로 정점에 스냅됩니다.

![](/img/spine-user-guide/clipping/origin.png)

설정 모드에서 정점을 이동하여 설정 포즈에 대한 클리핑 어태치먼트를 변경합니다. 애니메이팅 모드에서 정점을 이동하여 [변형 키](/spine-keys#변형-키)를 설정할 수 있습니다. 변형 키는 일반적으로 피해야 하고 대신 [가중치](/spine-weights)를 사용해야 합니다.

회전 및 크기 조정은 정점을 이동하는 데에만 사용됩니다. 사용된 회전 및 크기 조정의 양은 변형 키에 저장되지 않습니다. 정점 위치만 저장되고 변형 키 사이의 보간을 통해 항상 정점은 일직선으로 이동됩니다.

# 드로우 오더

클리핑은 클리핑 어태치먼트의 슬롯에서 시작하여 클리핑 어태치먼트의 [끝 슬롯](#끝-슬롯)에서 끝나는 드로우 오더의 모든 슬롯에 적용됩니다.

애니메이션에서 클리핑되는 어태치먼트를 변경하려면 드로우 오더에 [키를 지정](/spine-keys#드로우-오더)할 수 있습니다.

클리핑 어태치먼트를 설정하거나 해제하여 클리핑 어태치먼트를 표시하거나 숨깁니다. 애니메이션에서 이렇게 하려면 [슬롯 어태치먼트](/spine-keys#슬롯-어태치먼트)에 키를 지정합니다.

여러 클리핑 어태치먼트를 동시에 볼 수 있지만 클리핑된 슬롯은 드로우 오더에서 겹쳐질 수 없습니다.

# 자체 교차

클리핑 어태치먼트의 다각형이 자체 교차하는 경우 클리핑이 올바르게 작동하지 않습니다. 다각형 가장자리가 서로 교차하지 않도록 각별히 주의해야 합니다.

# 성능

Spine 런타임에서 클리핑은 CPU를 사용하여 구현되며, 특히 많은 정점이 있는 메쉬 어태치먼트를 사용하는 경우 매우 많은 비용이 드는 작업이 될 수 있습니다. 타깃 플랫폼에서 클리핑을 사용하는 애니메이션의 성능을 항상 확인하십시오.

<callout>가능한 한 허용되는 최소 정점 수인 3개의 정점만 있는 클리핑 어태치먼트를 사용하십시오.</callout>

클리핑을 위한 CPU 사용을 최소화하려면 클리핑 어태치먼트의 정점 수와 클리핑된 모든 영역 및 메쉬 어태치먼트의 정점 총수를 모두 줄이십시오. 시작 및 끝 슬롯을 설정하여 가장 적은 수의 어태치먼트를 클리핑한 다음 해당 어태치먼트를 편집하여 각 어태치먼트의 정점 수를 최대한 줄이십시오. 클리핑 다각형의 크기는 성능에 영향을 미치지 않습니다.

또한 클리핑 어태치먼트의 정점을 볼록하게 배열하면 클리핑을 하는 데 필요한 CPU 사용을 크게 줄일 수 있습니다. 이는 클리핑 어태치먼트의 정점이 먼저 볼록 다각형으로 구성이 해제된 다음, 결과로 생성되는 각 다각형이 클리핑된 모든 영역 및 메쉬 어태치먼트 정점과 대조되기 때문입니다.

클리핑 어태치먼트 성능은 이미지나 동영상을 내보낼 때가 아니라 Spine 런타임을 사용할 때만 문제가 됩니다.

[다음: 경로 어태치먼트](/spine-paths)
[이전: 경계 상자 어태치먼트](/spine-bounding-boxes)
[Spine 사용자 가이드: 목차]