본문 바로가기
Unreal Engine

Unreal Engine 충돌(collisions)설정하기

by hfgraphic 2025. 9. 22.
반응형

 

이번 글에는 **충돌(collisions)**에 대해 배우겠습니다.

이제 우리는 비디오 시리즈의 거의 끝에 와 있으며, 우리가 해야 할 마지막 작업 중 하나는 고객이 우리 프로젝트의 여러 부분을 자유롭게 이동할 수 있도록 **실행 파일(executable file)**을 만드는 것입니다. 이 파일을 만들기 전에, 우리는 몇 가지 **충돌(collisions)**을 만들어야 합니다. 기본적으로 이 충돌이 필요한 이유는, 고객이 장면을 돌아다닐 때 마치 사람이 아파트나 건물 안을 걷는 것처럼 보이게 하기 위함입니다. 그들이 위에서 내려다보는 시야를 갖거나, 벽을 통과하거나, 또는 우리가 충돌로 지정한 테이블이나 다른 물체를 통과할 수 없도록 해야 합니다. 따라서, 고객이 우리 장면을 걸을 때 마치 인간이 걷는 것처럼 보이도록 올바른 높이, 올바른 카메라 속도, 그리고 이번 시간에 다룰 충돌(collisions) 및 **충돌 영역(collision areas)**을 만드는 것이 매우 중요합니다.

자, 충돌에 대해 시작하기 전에, 충돌을 만드는 기본만 알면 매우 쉽다는 것을 알려드립니다. 실행 파일을 준비하기 위해 해야 할 일들을 목록으로 알려드릴게요.

우리가 가장 먼저 고려해야 할 것은 충돌이 필요한 영역들입니다. 예를 들어, **벽(walls)**이요. 식물 같은 모든 개체에 대해 충돌을 만들 필요는 없지만, 이나 **바닥(floor)**에는 충돌이 필요합니다.

다음으로, 우리는 **1인칭 캐릭터(first person character)**를 올바른 세부 설정과 함께 추가해야 합니다.

마지막으로, 실행 파일을 만들면 됩니다.

자, 시작해봅시다. 제가 말했듯이, 충돌 영역과 물체 및 벽을 위한 충돌을 만드는 것은 그렇게 어렵지 않습니다. 하지만 기본적으로, 우리는 먼저 충돌이 어디에 필요한지 결정한 다음, 그 작업을 수행해야 합니다.

가장 먼저 떠오르는 것은 바로 **바닥(floor)**입니다. 고객이 건물, 즉 장면 안에 있을 때, 바닥을 뚫고 떨어져서는 안 됩니다. 그래서 우리는 바닥을 위한 충돌 영역을 만들어야 합니다.

제가 가장 먼저 하는 일은 ‘창’(Windows) > ‘세부 정보’(Details) 창으로 가는 것입니다. 그리고 먼저 바닥을 선택하는 것으로 과정을 시작합니다. 그런 다음 **바닥의 스태틱 메시(Static Mesh)**로 이동하고 더블클릭합니다. 좋아요. 로딩될 때까지 기다리겠습니다. 아주 쉬워요. 얼마나 쉬운지 보게 될 거예요. 스태틱 메시를 더블클릭합니다. 이 창이 열리면, **‘충돌’(Collision)**을 클릭하고 **‘충돌 박스 추가’(Add Collision Box)**를 선택합니다. 즉, **‘단순화된 충돌(Simplified Collision) > 상자 추가(Add Box)’**입니다.

이렇게 하면 기본적으로 바닥을 감싸는 **상자(box)**가 생깁니다. 평면이라고 생각할 수 있지만, 상자이며 여기에는 약간의 높이가 있습니다. 이것이 상자의 높이입니다. 이제 **저장(save)**하면, 그것이 우리가 해야 할 전부입니다.

이제 우리 바닥에는 충돌이 생겼습니다. 1인칭 캐릭터를 추가해도 바닥을 뚫고 떨어지지 않을 겁니다.

이제 에 대해 같은 과정을 반복해야 합니다. 이 벽부터 시작해서 스태틱 메시를 클릭하고, 충돌로 가서 상자 추가(add box), **단순화된 충돌(simplify collision)**을 선택합니다. 심지어 이 상자를 움직일 수도 있습니다. 뒤로 옮길 수도 있고, 다른 크기로 만들 수도 있습니다.

이제 저장하고 다음 벽으로 갑니다. 이것도 아주 간단하고 쉽습니다. 같은 방법을 사용해서 **상자 추가(add box)**를 누릅니다. 이것이 우리가 해야 할 전부입니다. FBX 파일임포트하면 보통 이미 충돌이 포함되어 있습니다.

다음 벽은 좀 흥미롭습니다. 내부에 공간이 있기 때문이죠. 상자 추가를 사용할 수 있지만, 캐릭터가 이 공간을 통과해서 지나갈 수 있도록 뒤로 옮겨야 합니다. 위쪽 부분은 걱정할 필요가 없습니다. 우리 캐릭터는 점프하지 않을 것이기 때문입니다. 그래서 위쪽 부분은 걱정할 필요가 없습니다. 우리가 걱정해야 할 것은 양옆과 뒷벽입니다.

우리가 해야 할 일은 **충돌 상자(collision box)**의 크기를 조정하고, 뒤로 옮기고, 심지어 약간 크기를 줄여서 뒷벽의 뒤에 놓는 것입니다. 오른쪽 사각형을 위해 여기 놓고, 복사본을 만들어 오른쪽 사각형에 맞게 크기를 조정합니다. 우리는 처음 상자 대신 이 두 개의 충돌 상자를 사용할 것입니다. **‘저장’**을 클릭하면 이제 고정되었습니다. 이제 우리 캐릭터는 아무 문제 없이 이 공간을 통과할 수 있으며, 위로 올라갈 걱정을 할 필요가 없습니다.

**‘뷰 모드’(View Mode)**의 **‘얼굴’(Volto)**로 돌아가서, 우리 장면으로 돌아갑시다. 그리고 이 사각형을 선택해야 합니다. 전체를 선택하겠습니다. 그리고 스태틱 메시를 클릭합니다. 그러면, 우리는 이것을 위해 충돌 사각형을 만들어야 합니다. 우리는 오른쪽이나 다른 사각형을 위해 다른 사각형을 만들 필요가 없습니다. 왜냐하면 이미 이전 사각형과 함께 사각형이 있기 때문입니다. 그래서 저는 이것을 위해 사각형 하나만 만들고 저장하겠습니다.

이제 이 부분 또는 섹션은 해결되었고, TV나 다른 것을 위해 별도의 충돌 상자를 가질 필요는 없습니다.

이 벽은 스태틱 메시로 가서, 이 경우에는 큰 **통합 충돌 상자(unified collision box)**가 우리에게 충분할 것입니다. 캐릭터가 창문을 통과할 수 없게 되어 있기 때문에 이것을 사용합니다. 그래서 기본적으로 우리는 벽의 각 부분에 대해 여러 개의 다른 충돌 상자를 만들 필요가 없습니다.

그리고 **캐비닛(cabinet)**이 있습니다. 제가 캐비닛을 삽입했고, 다시 스태틱 메시를 클릭하고 이것을 위해 상자를 추가합니다. 이 역시 매우 자동적이고 빠릅니다.

아래로 가보면 **주방 조리대(kitchen counter)**가 있습니다. 기본적으로 같습니다. 다시 스태틱 메시를 클릭합니다. 충돌을 위한 다른 옵션들도 있습니다. 구(Sphere), 그리고 **자동 볼록 충돌(Auto Convex Collision)**이 있습니다. 이것은 기본적으로 일부 복잡한 형상과 복잡한 물체에 사용됩니다. 일부 설정이 있지만, 기본적으로 물체의 미묘한 부분들을 처리합니다. 예를 들어, 이 작은 내부 공간처럼요. 하지만 우리는 이것에 대해 걱정할 필요가 없습니다. 그냥 이것을 제거하고 간단한 **상자 충돌(box collision)**을 추가하고 저장하면 됩니다.

다음으로, 이 테이블과 의자를 처리해야 합니다. 먼저 이 의자를 **그룹 해제(un group)**하겠습니다. 왜냐하면 우리는 의자의 한 부분에 대해서만 하나의 충돌을 만들면 되기 때문입니다. 그래서 먼저 그룹 해제하고, 이 상단 부분에 대한 충돌 상자를 만들 것입니다. 이 논의 부분은 스태틱 메시를 더블클릭하고, **상자 추가(add box)**를 누릅니다. 제가 할 일은 이 상자의 크기를 조금 더 크게 조절해서 전체 영역을 처리하도록 하는 것입니다. 저장하겠습니다.

좋아요, 이제 충돌이 어떻게 보이는지 보여드리고 싶다면, (히브리어 부분: ‘플레이어 충돌’(Player collision)에 놓고, 우리는 상자를 더 크게 조정했고 이것이 우리 영역을 처리할 것입니다. 이제 우리는 다음 의자와 같은 것을 할 것입니다. 이 집에 ‘상자 추가’를 하고, 이 부분을 더 크게 만들고… 기본적으로 다음 것과 같은 것입니다. 그래서 이것이 더 크고, 저장하고 돌아갑니다.

이제 우리는 다른 세 개의 의자를 위해 그것을 복제할 필요가 있습니다. 우리는 다른 세 개의 의자를 다시 만들 필요가 없으므로 그냥 복제하고, 다음 의자로 가서 **‘상자 추가’(Add Box)**를 누릅니다. 우리의 캐릭터는 여기까지 올라오지 않을 것이기 때문에 우리는 다른 의자를 위해 그것을 할 필요가 없습니다. 저기까지 갈 수 있도록 도와줄 것입니다. 저기에도 **‘상자 추가’(Add Box)**를 누릅니다.

그리고 이것 다음에 우리는 단지 이 테이블을 돌봐야 합니다. 플레이어가 테이블을 통과하지 않도록 말이죠. 그래서 우리는 이것에 대해 ‘상자 추가’(Add Box)를 하고, 저장하고 돌아갑니다. 좋습니다, 이 부분은 끝났습니다.

여기 이 기둥들이 있습니다. 우리는 다른 종류의 충돌을 사용할 것입니다. **캡슐(Capsule)**을 사용할 것입니다. 이것에 대해 **‘캡슐 추가’(Add Capsule)**를 사용합니다. 기본적으로 이것은 **원통(cylinder)**입니다. 그리고 그 기둥을 자동으로 캡슐화합니다. 우리는 아무것도 할 필요가 없고, 아무것도 선택할 필요가 없습니다. 그냥 저장합니다. 그리고 우리는 오른쪽에 있는 다른 것과 똑같이 합니다. 좋아요. 그래서 충돌을 위해 **‘캡슐 추가’**를 사용하고, 저장하고 돌아갑니다.

좋습니다, 이제 이 소파들, 이 가구들이 있습니다. 다시 말하지만, 이들과 장면에 있는 나머지 물건들을 위해 **상자(box)**를 사용합니다.

이제 비디오의 나머지 부분은 기본적으로 같은 내용입니다. 반복적일 것입니다. 여기에 있는 대부분의 항목에 대해 충돌 상자를 만들 것입니다. 그래서 만약 그것이 지루하다면, 이 부분을 건너뛰고 다음 부분으로 넘어가도 됩니다. 예를 들어, 이 작은 물체, 이 작은 테이블에는 충돌 상자를 추가할 필요가 없습니다. 하지만 더 큰 것에는 확실히 추가해야 합니다.

대표사진 삭제

AI 활용 설정

사진 설명을 입력하세요.

그래서 저는 그 부분을 할 것입니다. 그리고 이 가구들에도 충돌 상자를 추가할 것입니다. 우리는 이것 이상으로 하고 싶지 않습니다. 작은 물체에 충돌 상자를 추가하고 싶지 않습니다. 왜냐하면 그렇게 하면 장면로딩 시간크기 면에서 훨씬 더 무거워질 것이기 때문입니다. 우리는 그런 일이 일어나기를 원하지 않습니다. 그래서 우리는 절대적으로 필요한 충돌 영역만 만듭니다.

이 장면의 나머지 부분은 거의 끝났다고 생각합니다. 이 물체에는 충돌 상자를 만들 필요가 없습니다. 이 램프는 매우 작고, 모퉁이를 시험해보고 다른 할 일이 있는지 봅시다. 이거, 여기 이 그림이 있습니다. 제가 할 일은 그룹 해제하고, 그림을 선택하지 않고, 그냥 그룹 해제하고, 그림을 선택하고, 스태틱 메시를 더블클릭하고, 이것에 충돌을 주고, 이 모퉁이를 더 크게 만들고, 일부를 가리고, 그룹 해제하고 돌아갑니다. 이것이 충돌과 관련하여 우리가 해야 할 전부였습니다.

다음으로 넘어가기 전에 플레이어 충돌 뷰 모드를 보고 충돌을 한 번 더 확인하고 싶습니다. 괜찮아 보입니다. 이제 돌아가서 **‘플레이’(play)**를 누르면 무슨 일이 일어나는지 봅시다. 아무것도 보이지 않습니다. 우리는 건물 밖에 있고, 안으로 들어갈 수 없습니다. 왜냐하면 우리가 벽을 위한 충돌 영역을 만들었기 때문입니다. 우리는 **지붕(roof)**을 잊었습니다. 그것도 만들 수 있습니다.

하지만 주요 문제는 **‘플레이어 시작’(Player Start)**이라는 것이 있다는 겁니다. 여기 있는 이 캡슐입니다. 조심스럽게 삭제할 수도 있지만, 설령 그렇게 했더라도 이 더하기 기호를 클릭하고 **‘모든 클래스’(All classes)**로 가서 실제로 **‘플레이어 시작’**을 검색한 다음, 건물 안에 원하는 곳에 놓을 수 있습니다.

저는 이게 좋은 생각이라고 생각해요. 좋은 팁이에요. 이 캡슐은 고객이 프로젝트에서 시작할 장소입니다. 그래서 그들이 **‘플레이’**를 클릭하고 실행 파일을 시작하고 프로젝트에서 이동하기 시작하고 싶을 때, 그들이 시작하는 곳입니다. 그래서 저는 이것에 주의를 기울이라고 제안합니다. 이 캡슐에는 약간의 **치수(dimensions)**가 있습니다. 이 치수를 다른 세션에서 변경하는 방법을 설명해 드릴게요. 하지만 치수가 올바른 크기가 아니면 특정 영역을 통과할 수 없습니다.

이제 우리는 준비가 되었습니다. 문을 위한 충돌은 만들지 않았습니다. 플레이어가 떨어지지 않을 것이기 때문에 필요하지 않습니다. 이것이 플레이어가 **‘플레이’**를 클릭했을 때 얻는 시야입니다. 그리고 모든 것이 준비되면, 우리가 만든 충돌 영역 중 일부를 테스트합니다. 저는 키보드의 F11을 눌러 더 큰 화면을 얻겠습니다. 그리고 이제 이 영역들을 테스트해봅시다. 좋아요, 기둥, 가구, 그리고 우리는 다른 각도에서 이것을 테스트할 수 있습니다. 좋아요, 작동합니다.

이제 우리는 위로 올라갈 수 있습니다. 지금은 1인칭 캐릭터를 추가하지 않았기 때문입니다. 그것은 다른 세션에서 다룰 것입니다. 하지만 캐비닛, 소파, 의자, 테이블, 모든 것이 작동하는 것처럼 보입니다. 그리고 우리 캐릭터가 떨어지거나 끼일 것을 걱정할 필요가 없습니다.

그래서 모든 것이 잘 작동합니다. 하지만 주방에 있는 이 영역은 중요합니다. 캐릭터를 위한 캡슐이 너무 크면, 그들은 주방의 이 영역을 통과할 수 없습니다. 그래서 우리는 이것에 주의를 기울여야 합니다.

좋습니다. 이 의자는 놓인 위치가 약간 비뚤어져 있습니다. 테이블을 향하도록 약간 기울이고 싶습니다. 제가 빠르게 그렇게 해볼게요. 이 부분을 선택하고 약간 기울일 것입니다. 조금 뒤로 옮기면 됩니다. 그래서 모든 것이 작동하고 있습니다.

지붕을 위한 충돌 상자도 만들 것입니다. 지붕을 선택한 후 스태틱 메시를 더블클릭합니다. 그리고 그것을 위해 상자를 추가하고, 저장하고 돌아갑니다. 좋습니다. 우리가 필요했던 모든 충돌 영역을 추가했습니다. 보셨듯이 매우 간단했습니다.

우리가 다룬 **충돌 모양(collision shapes)**의 기본 유형은 충돌 상자(collision box), 충돌 구(collision sphere), 캡슐(capsule), 그리고 우리가 이야기했던 **자동 볼록 충돌(auto-convex collision)**입니다. 그러니 연습하고, 필요한 충돌 상자 또는 충돌 영역을 만드세요. 예를 들어, 저는 제가 필요한 모든 것에 충돌 상자를 만들었다고 생각합니다. 여기 이 물체가 있고, 이것에도 충돌 상자를 사용할 수 있습니다.

 

반응형