스태틱 메시에서 소켓 사용하기

스태틱 메시 액터에서 소켓을 구성 및 사용하는 방법입니다.

Choose your operating system:

Windows

macOS

Linux

언리얼 엔진 에서 레벨을 만들 때 스태틱 메시 에 뭔가를 어태치해야 하는 경우가 있을 수 있습니다. 월드 아웃라이너 에서 스태틱 메시를 오브젝트의 부모로 지정할 수도 있습니다. 그러나 메시에 정확히 원하는 위치에 배치할 때 그 작업이 번거로울 수 있습니다. 소켓 은 스태틱 메시에 배치할 수 있는 어태치 포인트입니다. 소켓을 구성하면 소켓에 오브젝트를 연결할 수 있습니다. 이 튜토리얼에서는 스태틱 메시에 대해 소켓을 생성하고 이를 레벨에서 사용하는 방법에 대해 알아봅니다.

구성

이미 작업 중인 프로젝트가 있다면 해당 프로젝트를 사용하면 됩니다. 그렇지 않다면 언리얼 엔진을 실행하고 시작용 콘텐츠(Starter Content) 를 활성화한 채로 새 프로젝트를 생성합니다. 여기서는 1인칭 템플릿을 선택했지만 원하는 템플릿을 아무거나 사용해도 됩니다. 언리얼 엔진에서 새 프로젝트를 만드는 방법은 새 프로젝트 만들기를 참고하세요.

프로젝트가 열리면 콘텐츠 브라우저(Content Browser) 에서 StarterContent 폴더를 찾습니다. 그런 다음 Props 폴더로 이동하여 SM_DoorFrame 이라는 스태틱 메시를 찾습니다.

프로젝트에서 작업 중이지만 시작용 콘텐츠를 활성화하지 않았다면 콘텐츠 브라우저에서 에셋 을 임포트할 수 있습니다. 추가(Add) 드롭다운 메뉴에서 피처 또는 콘텐츠 팩 추가(Add Feature or Content Pack) 를 선택하세요. 자세한 내용은 콘텐츠 브라우저 인터페이스를 참조하세요.

이미지를 클릭하면 전체 화면을 볼 수 있습니다.

이미지를 클릭하면 전체 화면을 볼 수 있습니다.

다음 중 하나를 수행하여 스태틱 메시 에디터(Static Mesh Editor) 에서 SM_DoorFrame 을 엽니다.

  • 에셋 더블클릭

  • 에셋**Right-clicking우클릭 후 나타나는 컨텍스트 메뉴에서 편집(Edit)** 을 선택

이제 문 프레임이 스태틱 메시 에디터에 나타납니다.

이미지를 클릭하면 전체 화면을 볼 수 있습니다.

첫 번째 소켓 만들기

이제 스태틱 메시 에디터에서 메시를 열었으니 소켓을 생성하여 출입구 가운데에 불 파티클을 배치할 수 있습니다.

시작하려면 스태틱 메시 에디터 상단에서 창(Windows) 드롭다운 메뉴를 클릭하여 소켓 매니저(Socket Manager) 를 선택합니다.

이미지를 클릭하면 전체 화면을 볼 수 있습니다.

아래와 같이 소켓 매니저 창이 디테일 패널 옆에 나타납니다. 창이 열리면 소켓 생성(Create Socket) ( Create Socket Button ) 버튼을 클릭합니다.

이미지를 클릭하면 전체 화면을 볼 수 있습니다.

버튼을 클릭하면 소켓이 생성되고 이름을 지정하라는 창이 표시됩니다. 이 예시에서는 Fire 로 지정하겠습니다.

이미지를 클릭하면 전체 화면을 볼 수 있습니다.

뷰포트에서 스태틱 메시를 보면 소켓에 대한 이동 위젯이 있는 3D 위젯이 보일 것입니다. 보이지 않는다면 뷰포트 또는 소켓 매니저 패널에서 소켓을 클릭하여 표시합니다.

이미지를 클릭하면 전체 화면을 볼 수 있습니다.

소켓을 보면 원하는 위치에 있지 않을 것입니다. 기본적으로 새 소켓을 생성하면 스태틱 메시의 원점이 있는 곳에 배치되며, 이 경우에는 문 프레임의 하단 중앙이 됩니다.

뷰포트에서 이동 위젯을 사용하여 소켓을 원하는 위치로 수동으로 움직이거나 소켓 매니저 패널 내에서 상대 위치, 회전, 스케일을 변경할 수 있습니다. 이 가이드에서는 플레이어가 문을 통과할 때 불길을 통과하도록 출입구 중앙에 소켓을 배치할 수 있습니다.

상대적 위치(Relative Location)에서 Z 값을 0에서 115로 변경합니다(아래 이미지 참고).

이미지를 클릭하면 전체 화면을 볼 수 있습니다.

스태틱 메시에 오브젝트 어태치하기

스태틱 메시에 소켓을 배치한 상태로 레벨에서 스태틱 메시에 오브젝트를 어태치할 수 있습니다.

스태틱 메시 에디터의 툴바에서 저장 버튼을 클릭하고 레벨 에디터로 돌아갑니다.

콘텐츠 브라우저 에서 SM_DoorFrame 을 찾아 사본을 레벨로 드래그합니다. 그런 다음 Starter Content 폴더의 Particles 폴더로 이동한 다음 P_Fire 라는 에셋을 찾습니다.

이미지를 클릭하면 전체 화면을 볼 수 있습니다.

P_Fire 를 찾아서 마찬가지로 레벨로 드래그합니다. 이 파티클 이펙트는 SM_DoorFrame 에 어태치할 불 역할을 합니다.

P_Fire 의 인스턴스를 드래그한 다음 뷰포트에서 파티클을 우클릭 하여 컨텍스트 메뉴르 엽니다.

이미지를 클릭하면 전체 화면을 볼 수 있습니다.

![](ContextMenuForFire.png)

컨텍스트 메뉴에서 붙이기(Attach to) 를 선택한 다음 검색 상자에 Door Frame 을 입력하고 SM_DoorFrame 을 선택합니다.

이미지를 클릭하면 전체 화면을 볼 수 있습니다.

SM_DoorFrame 을 선택하면 오브젝트를 어태치할 위치를 선택합니다. 이 목록에는 없음(None) 과 스태틱 메시에 대해 생성한 모든 소켓이 표시됩니다. 목록에서 Fire 를 선택합니다.

이미지를 클릭하면 전체 화면을 볼 수 있습니다.

아웃라이너에서 이제 P_Fire 가 **SM_DoorFrame**의 자식이 되었습니다. 하지만 파티클 이펙트가 소켓 위치에 스냅되지 않음을 알 수 있습니다. 이런 현상이 발생할 경우 파티클 이펙트의 트랜스폼 위치를 리셋해야 합니다.

이미지를 클릭하면 전체 화면을 볼 수 있습니다.

P_Fire 를 선택한 상태로 디테일 패널의 트랜스폼 섹션으로 이동합니다. **위치(Location) 막대의 맨 오른쪽에서 리셋 화살표( Reset to Default Button )를 클릭하여 세팅을 다시 디폴트로 변경합니다.

SM_DoorFrame 자식으로 파티클 이펙트 위치는 이제 부모와 상대적으로 지정됩니다. 따라서 소켓에 스냅될 때 트랜스폼 값은 0,0,0으로 리셋됩니다.

이미지를 클릭하면 전체 화면을 볼 수 있습니다.

이제 파티클 이펙트가 스태틱 메시에 어태치되었습니다.

Fire Socket Attached to Static Mesh

파티클 이펙트가 소켓을 통해 스태틱 메시에 어태치됐지만 여전히 파티클 이펙트를 스태틱 메시와 독립적으로 이동, 회전, 스케일 조절할 수 있습니다. 그러나 스태틱 메시에 적용되는 트랜스포메이션은 모두 어태치된 오브젝트에도 적용됩니다.

디태치하기

어태치된 오브젝트를 디태치하는 작업은 어태치와 비슷한 단계를 거칩니다. 디태치할 오브젝트를 우클릭 하고 표시되는 컨텍스트 메뉴에서 디태치(Detach) 를 선택합니다. 이렇게 하면 스태틱 메시의 자식이 해제됩니다.

이미지를 클릭하면 전체 화면을 볼 수 있습니다.

단단한 문이 있는 출입구 만들기

지금까지 소켓을 사용하여 불길이 있는 출입문을 만들었습니다. 이번에는 좀 더 실용적인 예제를 만들어보겠습니다.

시작용 콘텐츠Props 폴더에서 SM_DoorFrame 을 찾아 레벨로 드래그하여 다른 사본을 저장합니다. 그런 다음 SM_Door 를 찾아 마찬가지로 레벨로 드래그합니다.

이미지를 클릭하면 전체 화면을 볼 수 있습니다.

이제 이미 있는 소켓을 사용하여 문 프레임에 문을 어태치할 수 있지만 문제가 하나 있습니다. 스태틱 메시 SM_Door 의 경우 하단 구석에 원점이 있으므로, 문을 Fire 소켓에 어태치하면 문이 공중에 떠서 출입구 구석을 관통하게 됩니다. 이 문제를 해결하기 위해 소켓을 하나 더 만들겠습니다.

새 소켓 만들기

스태틱 메시 에디터에서 SM_DoorFrame 을 다시 열고 소켓 매니저 패널에서 새 소켓을 추가합니다. 문 메시에 어태치한 소켓임을 알려줄 수 있도록 소켓 문의 이름을 지정합니다.

소켓은 3D 위젯을 이용하여 수동으로 움직이거나 소켓 매니저 패널 내에서 상대 위치, 회전, 스케일을 변경하여 움직일 수 있습니다. 이 예시에서는 소켓의 상대 위치 Y 값을 45로 변경하여 소켓을 문 프레임 메시의 하단 구석에 배치합니다.

이미지를 클릭하면 전체 화면을 볼 수 있습니다.

소켓이 보이지 않는다면 소켓 버튼을 하이라이트하여 소켓이 보이게 합니다.

이미지를 클릭하면 전체 화면을 볼 수 있습니다.

문을 틀에 어태치하기

이제 문을 틀에 어태치할 소켓이 생겼으니 문틀 메시를 저장하고 레벨 에디터로 돌아갑니다.

레벨에서 문 인스턴스를 선택하고 우클릭 하여 컨텍스트 메뉴를 엽니다.

컨텍스트 메뉴에서 어태치 를 선택한 다음 SM_DoorFrame 을 검색합니다.

문을 어태치할 문틀의 인스턴스를 찾아 선택합니다. 연결할 소켓을 물으면 Door 를 선택합니다.

이미지를 클릭하면 전체 화면을 볼 수 있습니다.

기본적으로 SM_Door 에는 콜리전이 설정되어 있지 않습니다. 지금 레벨을 플레이하면 플레이어가 단단한 문을 통과하여 걸을 수 있어서 별로 유용하지가 않습니다. 스태틱 메시 에디터 내에서 문에 대한 단순 박스 콜리전 을 설정하세요. 자세한 방법은 스태틱 메시로 콜리전 설정을 참조하세요.

콜리전을 세팅하고 나면 블루프린트를 사용하여 문이 열리고 닫히는 동작을 스크립팅할 수 있습니다. 자세한 내용은 문 열기를 참고하세요.

태그