# 물리 2D 레퍼런스

> Learn about Physics 2D settings.

다음 프로젝트 설정을 통해 Unity 물리 시스템에서 2D 게임 오브젝트의 물리 시뮬레이션 정확도에 대한 제한을 정의하는 물리 2D에 대한 전역 설정을 관리할 수 있습니다. 더 정확한 시뮬레이션을 구현하려면 더 많은 처리 오버헤드가 필요하며, 이 설정을 사용하면 프로젝트에 가장 적합하게 정확도와 성능 간 균형을 맞출 수 있습니다.

Physics 2D 프로젝트 설정 창을 열려면 **Edit** > **Project Settings…** > **Physics 2D**로 이동하여 **Physics 2D**에 대한 전역 프로젝트 설정을 관리합니다.

**참고:** 3D 물리의 전역 설정을 관리하려면 [물리](/engine/6000.0/manual/unity-editor/editor-features/comp-manager-group/class-physics-manager.md) 프로젝트 설정 레퍼런스 페이지를 참조하십시오.


**Physics 2D 인스펙터 설정:**
![](/api/media?file=/engine/6000.0/media/images/Physics2D_properties.png)

## General Settings 탭

Physics 2D 관리자 창의 **General Settings** 탭에서 사용할 수 있는 프로퍼티는 다음과 같습니다.

| 프로퍼티                               | 기능                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |                                                                                                                                                                                       |
| ---------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Gravity**                        | 모든 [리지드바디 2D](/engine/6000.0/manual/working-in-unity/unity2d/2d-physics/rigidbody-2d/introduction-to-rigidbody-2d.md) 게임 오브젝트에 적용되는 중력의 정도를 설정합니다. 일반적으로 Y축 음의 방향에 대한 중력만 설정합니다.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |                                                                                                                                                                                       |
| **Default Material**               | 개별 콜라이더 2D에 할당된 물리 머티리얼 2D가 없는 경우 사용할 [물리 머티리얼 2D](/engine/6000.0/manual/working-in-unity/unity2d/2d-physics/physics-material-2d-reference.md)에 대한 레퍼런스를 설정합니다.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |                                                                                                                                                                                       |
| **Velocity Iterations**            | 물리 시스템이 속도 효과를 결정하기 위해 수행하는 반복 횟수를 설정합니다. 숫자가 클수록 물리 계산이 더 정확해지지만 에디터가 CPU 시간을 더 많이 사용합니다.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |                                                                                                                                                                                       |
| **Position Iterations**            | 물리 시스템이 위치 변경을 확인하기 위해 수행하는 반복 횟수를 설정합니다. 숫자가 클수록 물리 계산이 더 정확해지지만 CPU 시간이 더 많이 소요됩니다.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |                                                                                                                                                                                       |
| **Bounce Threshold**               | 유연한 충돌의 임곗값을 설정합니다. Unity는 이 임곗값보다 낮은 상대 리니어 속도의 충돌을 비탄성 충돌로 간주하므로 바운스가 발생하지 않습니다.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |                                                                                                                                                                                       |
| **Max Linear Correction**          | 제약 해결 시 사용되는 최대 리니어 위치 보정 값입니다(범위: 0.0001-1000000). 이는 오버슈팅을 방지하는 데 도움이 됩니다.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |                                                                                                                                                                                       |
| **Max Angular Correction**         | 제약 해결 시 사용되는 최대 각도 보정 값을 설정합니다(범위: 0.0001-1000000). 이는 오버슈팅을 방지하는 데 도움이 됩니다.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |                                                                                                                                                                                       |
| **Max Translation Speed**          | 리지드바디 2D 게임 오브젝트의 물리 업데이트 도중의 최고 리니어 속도를 설정합니다.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |                                                                                                                                                                                       |
| **Max Rotation Speed**             | 리지드바디 2D 게임 오브젝트의 물리 업데이트 도중의 최고 회전 속도를 설정합니다.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |                                                                                                                                                                                       |
| **Baumgarte Scale**                | Unity가 충돌 중복을 해결하는 속도를 결정하는 스케일 요소를 설정합니다.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |                                                                                                                                                                                       |
| **Baumgarte Time of Impact Scale** | Unity가 충돌 시점 중복을 해결하는 속도를 결정하는 스케일 요소를 설정합니다.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |                                                                                                                                                                                       |
| **Time to Sleep**                  | 리지드바디 2D가 움직임을 멈춘 후 잠자기 모드로 전환될 수 있는 경과 시간(초)을 설정합니다.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |                                                                                                                                                                                       |
| **Linear Sleep Tolerance**         | **Time to Sleep**이 경과한 후 리지드바디 2D가 잠자기 모드로 전환되는 리니어 속도를 설정합니다.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |                                                                                                                                                                                       |
| **Angular Sleep Tolerance**        | **Time to Sleep**이 경과한 후 리지드바디 2D가 잠자기 모드로 전환되는 회전 속도를 설정합니다.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |                                                                                                                                                                                       |
| **Default Contact Offset**         | 콜라이더가 실제로 접촉하지 않더라도 접촉 중인 것으로 간주되는 근접 거리 값을 설정합니다. 거리가 `contactOffset` 값의 합보다 작은 콜라이더는 접촉을 생성하므로 오브젝트가 약간 떨어져 있더라도 충돌 검사 시스템이 접촉 제약을 예측적으로 적용합니다. **경고:** 이 값을 너무 줄이면 Unity의 연속 폴리곤 충돌 계산 속도가 느려질 수 있습니다. 반대로 값을 너무 많이 늘리면 버텍스 충돌에 결함이 발생할 수 있습니다.                                                                                                                                                                                                                                                                                                                                                                                                                                 |                                                                                                                                                                                       |
| **Simulation Mode**                | Unity가 2D 물리 시뮬레이션을 실행할 때 선택합니다.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |                                                                                                                                                                                       |
|                                    | **Fixed Update**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   | 이 옵션을 선택하면 [MonoBehaviour.FixedUpdate](/engine/6000.0/script-reference/unity-engine/mono-behaviour/fixed-update.md)가 호출된 직후 Unity에서 물리 시뮬레이션을 실행합니다.                                  |
|                                    | **Update**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         | 이 옵션을 선택하면 [MonoBehaviour.Update](/engine/6000.0/script-reference/unity-engine/mono-behaviour/update.md)가 호출된 직후 Unity에서 물리 시뮬레이션을 실행합니다.이 모드를 선택하면 [추가 프로퍼티](#simmodeupdate)가 표시됩니다. |
|                                    | **Script**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         | 이 옵션을 선택하면 [Physics2D.Simulate](/engine/6000.0/script-reference/unity-engine/physics-2-d/simulate.md)를 통해 물리 시뮬레이션을 수동으로 실행할 수 있습니다.                                                  |
| **Simulation Layers**              | **Simulation Mode**가 **FixedUpdate** 또는 **Update**로 설정되면 Unity가 시뮬레이션하는 [레이어](/engine/6000.0/manual/working-in-unity/working-with-scenes/layers/create.md)를 선택합니다.기본적으로 **Everything** 옵션이 선택되어 자동으로 [모든 레이어](/engine/6000.0/script-reference/unity-engine/physics-2-d/all-layers.md)를 선택하고 물리 시뮬레이션에 모든 레이어를 포함합니다. 시뮬레이션에 포함할 특정 레이어를 선택할 수 있으며, Unity는 선택한 레이어의 [Rigidbody2D](/engine/6000.0/script-reference/unity-engine/rigidbody-2-d.md), [조인트](/engine/6000.0/script-reference/unity-engine/joint-2-d.md), [이펙터](/engine/6000.0/script-reference/unity-engine/effector-2-d.md), [Collider2D](/engine/6000.0/script-reference/unity-engine/collider-2-d.md) 간 접촉만 시뮬레이션합니다. |                                                                                                                                                                                       |
| **Queries Hit Triggers**           | **Triggers**로 표시된 콜라이더 2D가 물리 쿼리(라인캐스트 또는 레이캐스트)와 교차하는 경우 적중을 반환하도록 하려면 이 옵션을 활성화합니다. 이 옵션은 기본적으로 활성화되어 있습니다.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |                                                                                                                                                                                       |
| **Queries Start In Colliders**     | 콜라이더 2D 안에서 시작된 물리 쿼리가 시작된 콜라이더를 감지할 수 있게 하려면 이 옵션을 활성화합니다.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |                                                                                                                                                                                       |
| **Callbacks On Disable**           | 접점이 있는 콜라이더가 비활성화된 경우 충돌 콜백을 생성하려면 이 옵션을 활성화합니다.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |                                                                                                                                                                                       |
| **Reuse Collision Callbacks**      | 물리 시스템이 모든 충돌 콜백에 단일 Collision2D 인스턴스를 재사용하도록 하려면 이 옵션을 활성화합니다. 이를 비활성화하면 물리 시스템이 각 충돌 콜백에 새로운 Collision2D 인스턴스를 생성합니다.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |                                                                                                                                                                                       |
| **Auto Sync Transforms**           | 트랜스폼 변화를 물리 시스템과 자동으로 동기화하려면 이 옵션을 활성화합니다.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |                                                                                                                                                                                       |
| **Gizmos**                         | 에디터에서 그리고자 하는 물리 2D 기즈모 유형을 선택합니다. 여러 옵션을 선택할 수 있습니다.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |                                                                                                                                                                                       |
|                                    | **Nothing**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | 이 항목을 선택하면 모든 옵션이 선택 해제됩니다. 물리 2D 기즈모가 그려지지 않습니다.                                                                                                                                     |
|                                    | **Everything**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     | 이 항목을 선택하면 모든 옵션이 선택됩니다.                                                                                                                                                              |
|                                    | **All Colliders**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | 이 항목을 선택하면 계층 창에서 선택하지 않아도 모든 콜라이더가 그려집니다.                                                                                                                                            |
|                                    | **Colliders Outlined**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             | 이 항목을 선택하면 콜라이더에 외곽선이 그려집니다(아웃라인의 컬러는 [2D 물리 환경 설정](/engine/6000.0/manual/unity-editor/editor-features/preferences.md#2D)에서 커스터마이즈할 수 있음).                                            |
|                                    | **Colliders Filled**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               | 이 항목을 선택하면 모든 콜라이더가 [2D 물리 환경 설정](/engine/6000.0/manual/unity-editor/editor-features/preferences.md#2D)에 지정된 채우기 컬러를 사용하여 그려집니다.                                                      |
|                                    | **Colliders Sleeping**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             | 이 항목을 선택하면 [2D 물리 환경 설정](/engine/6000.0/manual/unity-editor/editor-features/preferences.md#2D)에 지정된 **Awake** 또는 **Asleep** 컬러를 사용하여 연결된 리지드바디 2D가 잠자기 모드일 때 표시되도록 콜라이더가 그려집니다.       |
|                                    | **Collider Contacts**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              | 이 항목을 선택하면 콜라이더 접촉이 접점에서 시작하고 접촉 노멀 방향을 향하는 화살표로 표시됩니다. [2D 물리 환경 설정](/engine/6000.0/manual/unity-editor/editor-features/preferences.md#2D)에서 화살표의 접촉 컬러를 지정할 수 있습니다.                 |
|                                    | **Collider Bounds**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                | 이 항목을 선택하면 콜라이더가 생성하는 모든 [PhysicsShape2D](/engine/6000.0/script-reference/unity-engine/physics-shape-2-d.md)에 콜라이더 경계가 그려집니다. 이 경계는 AABB(축 정렬 바운딩 박스)입니다.                             |
| **Multithreading**                 | 멀티스레딩 설정을 조정하려면 확장합니다. 각 프로퍼티에 대한 내용은 [멀티스레딩](#multithreading)을 참조하십시오.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |                                                                                                                                                                                       |

### 시뮬레이션 모드: Update

다음 프로퍼티는 **Simulation Mode**에서 **Update** 또는 **Script**를 선택한 경우에만 표시됩니다.


**Frame:**
![](/api/media?file=/engine/6000.0/media/images/Physics2D-simmode-update.png)

| 프로퍼티                   | 기능                                                                                                                                  |
| ---------------------- | ----------------------------------------------------------------------------------------------------------------------------------- |
| **Use Sub Stepping**   | 이 프로퍼티를 활성화하면 에디터가 시뮬레이션 단계에서 시뮬레이션 하위 단계를 사용합니다.                                                                                   |
| **Use Sub Step Count** | 이 프로퍼티를 활성화하면 에디터가 모든 시뮬레이션 하위 단계의 접촉을 계산합니다. 이는 각 하위 단계에 더 정확한 시뮬레이션을 제공하지만 성능이 저하됩니다. 이 프로퍼티를 비활성화하면 첫 번째 시뮬레이션 하위 단계의 접촉만 계산합니다. |
| **Max Sub Step Count** | 시뮬레이션 하위 단계가 활성화되고 실행 중일 때 프레임당 허용되는 최대 시뮬레이션 하위 단계 수를 설정합니다. 그러면 에디터가 하위 단계에 사용하는 시간도 제한됩니다.                                       |
| **Min Sub Step FPS**   | 에디터가 하위 단계를 사용하기 전에 시뮬레이션 단계에 허용되는 최소 초당 프레임 수를 설정합니다. 현재 프레임 속도가 이 값보다 낮으면 **Use Sub Stepping**이 활성화된 경우 에디터는 시뮬레이션 하위 단계를 사용합니다.  |

### 멀티스레딩

**Multithreading** 섹션의 설정에서 [C# 잡 시스템](/engine/6000.0/manual/scripting/optimization/job-system.md)을 사용하여 멀티스레드 물리를 설정할 수 있습니다.


**확장된 Multithreading 설정:**
![](/api/media?file=/engine/6000.0/media/images/Physics2DManager-Jobs.png)

| 프로퍼티                                 | 기능                                                                                                                                                    |
| ------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Use Multithreading**               | 잡 시스템을 사용하여 시뮬레이션 단계를 실행하려면 이 옵션을 활성화합니다. 실행 방법은 나머지 옵션을 사용하여 설정합니다.                                                                                  |
| **Use Consistency Sorting**          | 시뮬레이션에서 일관된 처리 순서를 유지해야 하는 경우 이 옵션을 활성화합니다.여러 CPU 스레드에서 시뮬레이션 단계를 실행하면 별도의 데이터 배치가 생성됩니다. 이러한 별도의 배치를 처리하면 처리 순서의 결정론은 줄어들지만 결과를 더 빨리 얻을 수 있습니다.      |
| **Interpolation Poses Per Job**      | 각 시뮬레이션 잡에서 보간되는 최소 [리지드바디 2D](/engine/6000.0/manual/working-in-unity/unity2d/2d-physics/rigidbody-2d/introduction-to-rigidbody-2d.md) 오브젝트 수를 설정합니다. |
| **New Contacts Per Job**             | 각 시뮬레이션 작업에서 찾을 최소한의 새로운 접촉 수를 설정합니다.                                                                                                                 |
| **Collide Contacts Per Job**         | 각 시뮬레이션 작업에서 충돌할 최소 접촉 수를 설정합니다.                                                                                                                      |
| **Clear Flags Per Job**              | 각 시뮬레이션 작업에서 지울 최소 플래그 수를 설정합니다.                                                                                                                      |
| **Clear Body Forces Per Job**        | 각 시뮬레이션 작업에서 지울 최소 바디 수를 설정합니다.                                                                                                                       |
| **Sync Discrete Fixtures Per Job**   | 각 시뮬레이션 작업에서 이산적 아일랜드 솔빙 중 BroadPhase에서 동기화할 최소 고정물 수를 설정합니다.                                                                                         |
| **Sync Continuous Fixtures Per Job** | 각 시뮬레이션 작업에서 연속적 아일랜드 솔빙 중 BroadPhase에서 동기화할 최소 고정물 수를 설정합니다.                                                                                         |
| **Find Nearest Contacts Per Job**    | 각 시뮬레이션 작업에서 찾을 최소한의 가장 가까운 접촉 수를 설정합니다.                                                                                                              |
| **Update Trigger Contacts Per Job**  | 각 시뮬레이션 작업에서 업데이트할 최소한의 트리거 접촉 수를 설정합니다.                                                                                                              |
| **Island Solver Cost Threshold**     | 이산적 아일랜드 솔빙 중 모든 바디, 접점과 조인트의 최소 임곗값 비용을 설정합니다.                                                                                                       |
| **Island Solver Body Cost Scale**    | 이산적 아일랜드 솔빙 중 각 바디의 비용 스케일을 설정합니다.                                                                                                                    |
| **Island Solver Contact Cost Scale** | 이산적 아일랜드 솔빙 중 각 접점의 비용 스케일을 설정합니다.                                                                                                                    |
| **Island Solver Joint Cost Scale**   | 이산적 아일랜드 솔빙 중 각 조인트의 비용 스케일을 설정합니다.                                                                                                                   |
| **Island Solver Bodies Per Job**     | 아일랜드 솔빙을 수행할 때 각 시뮬레이션 작업에서 처리할 최소 바디 수를 설정합니다.                                                                                                       |
| **Island Solver Contacts Per Job**   | 아일랜드 솔빙을 수행할 때 각 시뮬레이션 작업에서 처리할 최소 접점 수를 설정합니다.                                                                                                       |

## Layer Collision Matrix 탭

**Layer Collision Matrix** 탭 설정을 통해 콜라이더(다른 리지드바디 2D에 연결됨)가 게임 오브젝트에 할당된 레이어에 따라 서로 접촉할 수 있는지를 제어합니다. 매트릭스는 각 레이어와 다른 모든 레이어를 표시하므로 다른 레이어와 접촉할 수 있는 특정 레이어를 선택할 수 있습니다.


**Layer Collision Matrix 탭:**
![](/api/media?file=/engine/6000.0/media/images/physics2d-layer-collision-matrix.png)

두 레이어의 교차점에 있는 체크박스를 선택하면 해당 두 레이어 간의 접촉이 허용됨을 나타내고, 체크박스를 선택 해제하면 해당 두 레이어 간의 접촉이 허용되지 않음을 나타냅니다. 레이어 이름이나 체크박스 위에 마우스를 올리면 해당 레이어의 행과 열이 강조 표시되어 해당 레이어가 영향을 주는 레이어를 더 쉽게 확인할 수 있습니다.

**팁**: 최상의 성능을 위해 최적화하려면, 다른 항목과 접촉시키려는 특정 레이어만 선택하고 다른 불필요한 접촉은 모두 비활성화하여 최소한의 잠재적인 접촉만 선택해야 합니다. 이를 위해 **Disable All** 또는 **Enable All**을 선택하여 모든 옵션을 한 번에 빠르게 선택하거나 선택 해제한 후 특정 레이어를 선택할 수 있습니다.

## 추가 리소스

* [물리](/engine/6000.0/manual/physics-section.md)
* [Physics3D 프로젝트 설정](/engine/6000.0/manual/unity-editor/editor-features/comp-manager-group/class-physics-manager.md)
* [2D 물리 레퍼런스](/engine/6000.0/manual/working-in-unity/unity2d/2d-physics.md)
