본문 바로가기

Unreal 게임개발종합반 2주차

9일차 250724 (강의 2-5)

환경 디자인 - 머티리얼 & 라이팅

머티리얼

눈으로 보는 모든 3D 모델의 외관은 머티리얼에 의해 만들어지며, 이는 텍스쳐, 색상, 반사, 굴절 등 다양한 시각적 효과를 구현하는 기반이 된다.

  • 머티리얼의 역할
    • 표면 표현: 금속, 유리, 나무, 플라스틱 등 다양한 재질을 사실적으로 표현할 수 있습니다.
    • 빛의 상호작용: 조명에 따른 반사, 굴절, 그림자 효과를 통해 현실감을 부여합니다.
    • 효과 구현: 노멀 맵, 스페큘러, 메탈릭 등 세밀한 속성을 통해 복잡한 시각 효과를 구현합니다.

실습

  • 머티리얼 생성

머티리얼의 메인 노드가 생성된다. 노드를 이용하여 다양한 효과를 줄 수 있다.

  • 팹에서 다운받은 Material의 텍스처를 드래그하여 놓으면 노드가 생성된다.

  • 텍스처에는 Base color, Normal, A/O(앰비언트 오클루전), Roughness 등 여러가지의 타입이 있는데 각 UVs를 Landscape Coords 노드에 연결을 한다.

컬러 정보 (Albedo) = 베이스 컬러
- 물체의 색상 정보가 저장된 텍스처 조명, 그림자 등의 영향을 받지 않은 상태의 순수한 정보.
라이팅 정보 (Normal Map)
- 미세한 굴곡을 표현하는 텍스처 조명이 닿았을때, 튀어나온 부분은 밝고, 패인 부분은 어둡게 표현됨.
패킹 텍스쳐 (Packed Texture)
- 성능 최적화를 위해 개별 텍스쳐를 하나로 합쳐놓은 형태 AO (Ambient Occlusion), Roughness, Metalness 등의 정보가 들어있다.

Landscape Layer Blend 노드를 생성 후 디테일 창에서 Material 종류별로 이름을 설정해주고 Blend 노드에 Material의 각 텍스처 타입별(베이스, 노말, Roughness, A/O,Metalness)로 연결을 한다.

Base color와 Normal Map은 RGB를 연결하면 되지만 A/O, Roughness, Metalness는 각 R, G, B를 연결 해야한다.

각 타입에 맞게 메인 노드에 연결을 해준다.

Landscape Visibility Mask 노드를 메인 노드의 오파시티 마스크에 연결을 한다.

Landscape Visibility Mask는 투명도를 조절 가능하게 하는 노드이다.

저장 후 레벨로 돌아와서 아웃라이너에 Landscape 클릭 후 디테일 창에서 만든 Material을 적용시킨다.

랜드스케이프 모드로 전환 후 왼쪽의 페인트를 누르면 아래에 Material에서 생성해놓은 레이어가 나온다.

페인트를 누르면 위 사진처럼 LayerInfo가 아닌 없음으로 나오는데 오른쪽의 +를 눌러서 레이어 인포 생성을 해줘야 한다.

이제 각 레이어를 클릭 후 적용시키고 싶은 구역에 색칠을 한다.

라이팅

라이팅은 게임의 분위기를 결정짓는 핵심 요소이다.

적절한 조명 설정은 게임 환경에 생명력을 불어넣으며, 플레이어의 몰입감을 극대화시킨다.

  • 디렉셔널 라이트, 포인트 라이트, 스포트 라이트 등 다양한 조명 옵션을 활용하여 각 상황에 맞는 분위기를 연출합니다.

실습

포스트 프로세스 볼륨 액터를 생성한다.

디테일 창에서 언바운드에 체크를 한다.

포스트프로세스볼륨은 지정한 영역에 빛을 발생시켜 밝게 해주는 액터인데 무한 규모(언바운드)를 체크해주면 지정된 영역에서만 적용되는게 아닌 레벨 전체 범위에 적용시키는것.

디테일 - Lens에서 주로 많은 기능을 이용하여 라이팅을 조절한다.

 

Exposure

Exposure에서 미러링 모드를 Manual로 변경 후 노출 보정 값을 조절하여 레벨의 밝기를 조절 가능하다.

 

Flares

강도를 조절하여 빛의 확산 정도, 색상을 변경할 수 있다.

 

Bloom

빛의 번짐을 조절할 때 사용한다.

위 기능 말고도 다양한 기능이 있지만 잘못 설정하면 최적화가 안되어 게임에 렉을 유발 할 수 있다.
주로 시네마틱을 만들 때 사용하는 기능들이다.

 

빛(SkyLight, DirectionalLight)

간접광은 광원이 직접 피사체에 닿지 않고, 다른 표면에 반사되거나 확산된 빛을 의미한다.
간접광을 끄면 햇빛(DirectionalLight)의 방향으로만 빛이 적용되는 모습.

DirectionalLight : 회전 값을 변경하여 해의 위치를 변경할 수 있다.

언리얼엔진에는 빛 효과를 주는 여러가지 기능들이 많지만 주로 시네마틱 작업에 사용을 하고 게임 조작에는 SkyLight와 DirectionalLight가 주로 사용된다.

 

안개 효과 주기

ExponentialHeightFog를 생성한다.

생성하자마자 레벨에 안개가 자욱하게 낀 것을 볼 수 있다.

높이 감쇠를 조절하여 안개의 높이를 조절할 수 있다.

'Unreal 게임개발종합반 2주차' 카테고리의 다른 글

9일차 250724 (강의 2-6)  (0) 2025.07.29
8일차 250723 (강의 2-4)  (0) 2025.07.28
8일차 250723 (강의 2-3)  (0) 2025.07.28
7일차 250722 (강의 2-2)  (0) 2025.07.28
6일차 250721 (강의 2-1)  (0) 2025.07.28