Version: 2017.1
물리 머티리얼 2D(Physics Material 2D)
거리 조인트 2D

2D 조인트(2D Joints)

이름에서 알 수 있듯이, 조인트는 게임 오브젝트를 하나로 연결합니다. Rigibody 2D 컴포넌트가 연결된 게임 오브젝트나 월드 공간의 고정된 포지션에만 2D 조인트를 연결할 수 있습니다.

2D 조인트의 이름은 모두 ‘2D’로 끝납니다. 이름이 ‘2D’로 끝나지 않는 조인트는 3D 조인트입니다. 2D 조인트는 2D 게임 오브젝트와 함께 사용할 수 있고 3D 조인트는 3D 게임 오브젝트와 함께 사용할 수 있습니다.

모든 2D 조인트에 대한 유용한 배경 정보는 아래의 Details and Hints를 참조하십시오.

다양한 종류의 2D 조인트가 있습니다. 조인트 프로퍼티에 대한 자세한 내용은 각 조인트 레퍼런스 페이지를 참조하십시오.

  • 거리 조인트 2D - 리지드바디 물리로 제어되는 두 게임 오브젝트를 서로 연결하고 둘 사이에 일정 거리를 유지합니다.

  • 고정 조인트 2D - 두 오브젝트의 상대적인 포지션을 고정시켜 오브젝트가 항상 주어진 위치와 각도에서 오프셋합니다. 예를 들어 서로 단단히 연결된 것처럼 반응해야 하는 오브젝트는 서로 멀리 떨어져서도 안 되고, 서로 더 가까이 움직여서도 안 되고, 서로를 기준으로 회전해서도 안 됩니다. 이 조인트를 사용하여 고정되어 있으면서 약간 신축성이 있는 연결을 만들 수도 있습니다.

  • 마찰 조인트 2D - 리지드바디 물리로 제어되는 두 게임 오브젝트 사이의 선속도와 각속도를 모두 0으로 줄입니다. 즉, 게임 오브젝트의 속도를 줄이고 정지시킵니다. 회전하지만 움직임이 둔화되는 평면을 예로 들 수 있습니다.

  • 힌지 조인트 2D - 리지드바디 물리로 제어되는 게임 오브젝트를 회전축에 해당하는 공간의 한 점에 연결할 수 있습니다. 가위의 접합 부분에 있는 회전축을 예로 들 수 있습니다.

  • 상대 조인트 2D - 조인트를 사용하여 리지드바디 물리로 제어되는 두 게임 오브젝트가 서로의 포지션을 기준으로 포지션을 유지할 수 있습니다. 두 오브젝트가 상호 간에 오프셋을 유지하는 데 사용되는 조인트입니다. 플레이어를 따라 함께 움직이는 추가 비행 포대가 있는 슈팅 게임을 예로 들 수 있습니다.

  • 슬라이더 조인트 2D - 조인트를 사용하면 리지드바디 물리로 제어되는 게임 오브젝트가 미닫이 문처럼 공간에서 선을 따라 미끄러질 수 있습니다.

  • 스프링 조인트 2D - 조인트를 사용하면 리지드바디 물리로 제어되는 두 게임 오브젝트를 스프링으로 연결된 것처럼 연결할 수 있습니다.

  • 타겟 조인트 2D - 다른 조인트처럼 어떤 리지드바디 오브젝트에 연결되지 않고 특정 타겟에 연결됩니다. 조인트는 스프링 타입으로, 중력의 작용에 따라 동작하는 오브젝트를 선택하고 움직이는 데 등에 사용할 수 있습니다.

  • 휠 조인트 2D - 휠과 서스펜션을 시뮬레이션합니다.

세부 정보 및 힌트

Constraints

모든 조인트는 리지드바디 2D 동작에 적용되는 제약을 하나 이상 제공합니다. 제약은 하나의 규칙으로, 조인트는 규칙이 영구적으로 위반되지 않게 하려고 합니다. 사용 가능한 제약의 종류가 여러 가지 있지만, 일반적으로 조인트 하나에 몇 가지만 제공되고 하나만 제공되는 경우도 있습니다. 일부 제약은 리지드 바디가 선이나 특정 포지션에서 벗어나지 않게 하는 등 동작을 제한합니다. 리지드 바디 오브젝트를 회전하거나 움직이면서 일정 속도를 유지하려고 하는 모터 같은 ‘운전’ 제약도 있습니다.

Temporarily Breaking Constraints

물리 시스템은 제약이 일시적으로 위반될 것이라고 기대합니다. 오브젝트는 거리 제약에 따라 정해진 거리보다 서로 더 멀리 이동하거나, 모터 속도 제약보다 더 빨리 움직일 수 있습니다. 제약 위반이 없을 때 조인트는 힘을 가하지 않고 일을 거의 하지 않습니다. 규칙이 위반되면 조인트는 힘을 가해 제약을 바로 잡습니다. 따라서 위에서 언급한 ‘운전’ 제약의 경우, 조인트는 거리를 유지하거나 모터 속도를 확인합니다. 하지만 힘이 항상 제약을 곧바로 바로 잡는 것은 아닙니다. 작업은 일반적으로 빠르게 이루어지지만, 시간이 다소 걸릴 수 있습니다.

시간 지연으로 인해 조인트가 ‘늘어나거나’ 또는 ‘유연해진’ 것처럼 보일 수 있습니다. 지연이 발생하는 이유는 물리 시스템이 제약 위반을 바로잡기 위해 조인트에 힘을 가하는 한편, 게임 안의 다른 물리력이 제약을 위반하는 방향으로 작용해서 서로의 힘이 상충하기 때문입니다. 상충되는 힘이 게임 오브젝트에 작용해서 느리게 안정화되는 조인트도 있고, 다른 조인트에 비해 더 빠르게 반응하고 빨리 안정화되는 조인트도 있습니다.

제공하는 제약 옵션에 관계없이 조인트는 제약 위반을 바로잡기 위해서만 힘을 가합니다. 조인트가 가하는 힘에는 직선(linear) 방향의 힘과 회전(torgue) 방향의 힘이 있습니다.

힌트: 조인트에 작용되는 상충되는 힘을 감안하여, 조인트가 연결된 리지드바디 오브젝트에 큰 힘을 가할 때는 항상 주의하는 것이 좋습니다. 특히 오브젝트의 매스가 큰 경우 더욱 그렇습니다.

Permanently Breaking Joints

모든 조인트는 직선 운동의 힘이나 각 토크 힘이 정해진 제한을 초과할 경우 완전히 작동을 멈출 수 있는 기능(제동)이 있습니다. 이를 ‘__Break Force__’와 ‘__Break Torque__’라고 합니다.

  • 조인트가 직선 운동의 힘을 가하는 경우, 조인트에 Break Force 옵션이 있습니다.
  • 조인트가 각(회전) 힘을 가하는 경우, 조인트에 Break Torque 옵션이 있습니다.

두 제한 모두 ‘__Infinity__’로 미리 설정되어 있습니다. 즉, 제한이 없습니다.

Break Force 또는 Break Torque 제한이 초과되면 조인트가 제동되고 컴포넌트가 게임 오브젝트에서 자동으로 삭제됩니다.

물리 머티리얼 2D(Physics Material 2D)
거리 조인트 2D