본문 바로가기

레퍼런스

CubeMap InteriorMapping

https://youtu.be/nPBdKYWe_xk

 

앞부분은 블렌더라 일단 패스 언리얼 부분만 따라해 봤다.

RoomMaker_BP라는 액터를 부모로 블루프린트를 만들어주자

컴포넌트를 추가해서 다음과 같은 방을 만들꺼다.

StaticMesh를 컴포넌트로 추가하고 이름을 Wall 메시는 다음과 같이 설정하고 Wall을 3번더 복사해서 방을 만들어준다.

한면은 보여야 하므로 Detail에서 visible로 필터링하고 다음 세팅을 켜주자 그럼 위 그림처럼 앞면이 보인다.

StaticMesh 컴포넌트를 추가하고 이름을 Floor로 하고 다음과 같이 지정해준다.

카피해서 Ceiling으로 이름 바꾸고 위치를 위로 해준다 천장이니까 완성 재질은 정당히 해주자. 교재에서는 천장에 형광등이 있던데 StaticMesh를 추가하고 Ceiling이라고 필터링후 등을 하나 넣어주자 PointLight를 추가해주고 

마지막으로 제일 중요한 SceneCaptureComponentCube를 추가해주자 그럼 카메라가 생기는데 중앙에 배치해준다. 

디테일에서 Capture Every Frame을 꺼준다. TextureTarget을 탐색해서 CubeRenderTarget으로 설정합니다.

그럼 저장경로가 나오는데 다음으로 저장합니다. TextureTarget은 대략 가운데 3개의 면과 양쪽에 반쪽면이 보이면 된다. 안그러면 카메라의 위치를 공간의 가운데로 위치시키며 된다.

저장된 CubeRenderTarget을 우클릭해서 CreateStaticTexture를 선택하고 이름을 적당히 바꾼다.

머터리얼을 만들고 이름을 CT_Interior_Master로 하자

에디터를 열고 Interiocubemap노드를 추가하고 편하게 보기 위해  프리뷰창의 왼쪽2번째 큐브를 선택하자. 그럼 텍스쳐가 방처럼 보인다.

컨텐츠브라우저에서 RenderTargetCube_T_Tex 끌어다 놓고 우클릭해서 ConvertToParameter로 변경해주고

BaseColor와 연결해준다.

그럼 방이 여러게 보인다.

1+좌클릭을 2개 넣고 Append로 묶어 Tiling에 연결해주면 방이 하나만 보인다.

마지막으로RandomizeRotation핀을 끌어 StaticBoolParam노드를 추가하고 True를 체크하면 면이 바뀌는데 왜하는지 모르겠다. 안하는게 원래의 화면이 보인다.

 

큐브를 레벨에 놓고 CT_Interior_Maste 모터리얼을 적용하면 각도에 따라 면에 방이 보인다.

테두리를 만들고 싶으면 큐브를 2개 레벨에 놓고 틀에 구멍을 낼 큐브를 앞뒤로 튀어나오게 한다. 작은 큐브는 카피해놨다가 나중에 그림을로 쓰자. 일단 2개를 선택후

모델링모드에서 모델탭을 선택후 불리언을 선택하자

적당히 Operation을 바꾸면 틀만 남고 뺀 큐브는 사라진다.

틀에 머터리얼을 넣어 액자 분위기를 만들어주고 사이에 아까 카피해놓은 큐브를 넣고 CT_Interior_Maste 를 적용해주면 된다. 예제에서는 뒤로가면 투명한 유리 느낌이 났지만 

머터리얼을 만들고 노드 선택후  BlendMode를 Translucent로 선택후 Basecolor와 Opacity를 설정해 유리 머터리얼을 만들고

뒤쪽에 큐브를 놓고 지정해주었는데 앞쪽의 큐브가 보였다. 유튜브를 보면 블렌드를 써서 UV Mapping을 해준것 같다.

 

절반의 성공이지만 머터리얼의 기법을 하나 더 배워 재미있었다. 포탈이동시 이동할 세상의 맵핑을 할수 있을것 같다.

'레퍼런스' 카테고리의 다른 글

Water Buoyancy  (0) 2024.05.09
PCG Swimming  (0) 2024.05.08
Hand IK 무기장착  (0) 2024.05.06
Lumen 설정  (0) 2024.05.03
Unreal Engine Game Framework  (0) 2024.05.01