Choose your operating system:
Windows
macOS
Linux
흔들거리는 샹들리에, 물레바퀴를 만들거나, 아니면 그냥 피직스 바디를 일반적인 영역에 묶어두려는 경우, Physics Constraint Actor (피직스 컨스트레인트 액터)가 답입니다. 이 문서에서는 피직스 컨스트레인트 액터의 사용법에 대해 다뤄보겠습니다.
컨스트레인트는 기본적으로 조인트의 한 유형입니다. 두 개의 (하나는 물리 시뮬레이션이 적용된다 가정) 액터를 연결시켜 주며, 일정한 제한이나 힘을 가할 수도 있습니다. 언리얼 엔진 4 에는 매우 유연한 데이터 주도형 컨스트레인트 시스템이 있어, 디자이너가 옵션을 조금 바꿔주는 것으로 다양한 유형의 조인트를 만들 수 있습니다. 엔진에 기본 조인트 유형이 몇 가지 준비되어 있으나 (볼 앤 소켓, 힌지, 프리즈매틱), 세팅만 조금씩 다를 뿐입니다. 어느 조인트 유형이든 실험해 보면서 자유롭게 자신만의 설정을 만들어 볼 수 있습니다.
피직스 컨스트레인트 액터
-
피직스 컨스트레인트 액터 는 모드 패널의 배치 모드 중 모든 클래스 섹션에서 찾을 수 있습니다:
-
여기서 다른 액터와 마찬가지로 클릭하여 뷰포트에 끌어놓는 것으로 레벨에 배치할 수 있습니다.
-
레벨에 배치된 상태에서는, 디테일 패널에서 Constraint 카테고리를 펼쳐 제약시킬 두 액터를 지정할 수 있습니다.
-
풀다운 메뉴를 사용해서 선택하고자 하는 액터를 검색하든지, "점안기" 아이콘을 사용하여 뷰포트에서 액터를 선택하든지 하면 됩니다.
-
Constraint Actor 2 에 대해 4 단계를 반복합니다.
-
피직스 컨스트레인트 액터와 Constrained Actor (제약된 액터)를 원하는 위치로 이동시킵니다.
_이 경우, 세 개의 액터 (두 개의 박스와 피직스 컨스트레인트) 모두 동시에 선택한 다음, 90 도 회전시켜 제약된 빨강 박스가 제약된 파랑 박스 위에 오도록 했습니다. 이렇게 하면 Angular Swing Motions (각 스윙 동작)이 올바른 축에 오도록 피직스 컨스트레인트를 회전시켜 주기도 합니다.
-
최소 하나의 제약된 액터에 피직스를 켭니다.
-
피직스 컨스트레인트 액터를 원하는 대로 설정합니다.
이 문서에서 바꾼 프로퍼티는 다음과 같습니다:
-
Angular Swing 1Motion 과 Angular Swing 2Motion 을 ACM_Limited 으로 설정.
-
Swing 1Limit Angle 과 Swing 2Limit Angle 를 25 도로 설정.
-
Swing Limit Soft 는 껐습니다.
피직스 컨스트레인트의 프로퍼티에 어떠한 효과가 있는지 확인하려면, 피직스 컨스트레인트 레퍼런스 문서를 참고하세요.
-
-
에디터에서 플레이 또는 에디터에서 시뮬레이트 로 피직스 컨스트레인트를 테스트합니다.
제약된 액터를 어떻게 배치했는가에 따라 힘을 가할 수 있는 방법이 필요한데, 그러기 위한 방법이 모든 프로젝트 템플릿에 있지는 않습니다. RadialForceActor 를 사용하면 되는데, 피직스 컨스트레인트 액터와 마찬가지로 모든 클래스 섹션에서 찾아 배치하면 됩니다.
이 문서에 사용된 박스의 경우, 50000 의 힘을 가하니 밀렸습니다. RadialForceActor 의 반경은 그림에 맞도록 줄였습니다.
스켈레탈 메시 고려사항
스켈레탈 메시를 제약하는 경우, 적합한 프로퍼티에 Constraint Bone 이름을 줘야 합니다. 이 경우 본은 사실상 스켈레탈 메시의 피직스 애셋에 있는 피직스 바디입니다. 이렇게 지정해 주는 이유는, 피직스 바디의 이름은 연관된 Skinned Bone 이름을 따는 반면, 피직스 애셋은 모든 Skinned Bone 에 대해 피직스 바디가 필요치 않기 때문입니다.
액터의 컴포넌트
액터의 특정 컴포넌트를 제약시키려는 경우, 적합한 프로퍼티에 Component Name 을 줘야 합니다. 액터의 루트가 제약이 가능한 유형인 경우, 제약되는 기본 컴포넌트가 됩니다. 그러나 Constrained Actor 1 또는 2 에 유효한 Component Name 을 주는 경우, 해당 컴포넌트가 피직스 컨스트레인트의 타깃이 됩니다. 그 컴포넌트가 스켈레탈 메시라면, 본 이름도 적합한 프로퍼티에 넣어줘야 합니다.
_기능적으로 이 두 액터와 피직스 컨스트레인트는 같은 효과를 냅니다만, 오른편의 블루프린트는 포인트 라이트를 루트의 자손으로 만듦으로써 다른 효과를 낼 수 있습니다. 캐릭터가 피직스 캡슐을 루트로 갖지만, 스켈레탈 메시도 갖기에 둘 다 피직스 컨스트레인트의 타깃이 될 수 있습니다.
피직스 컨스트레인트를 붙일 수 있는 컴포넌트 이름을 준 경우, 해당 컴포넌트 주변에 바운딩 볼륨이 나타납니다. 바운딩 볼륨이 나타나지 않는 경우, 컴포넌트 이름이 맞는지, 피직스 컨스트레인트에 실제로 제약될 수 있는 것인지 확인해 보세요.