언리얼 엔진에서 표면의 디테일을 추가할 때는 기존 Mesh와 Material을 직접 수정하지 않고, 필요한 무늬만 별도로 투영하는 방법을 사용할 수 있다.
Decal은 바닥의 얼룩이나 벽의 손상처럼 특정 영역에만 색상과 표면 정보를 더할 때 유용하다.
반면 유리는 Mesh에 직접 적용하는 Surface Material로 제작하며, 투명도뿐 아니라 반사와 굴절, 카메라에서 바라보는 각도까지 함께 고려해야 자연스럽게 표현할 수 있다.
이번 포스트에서는 Photoshop에서 만든 컬러 이미지와 흑백 마스크를 이용해 Decal을 제작했다.
이어서 알파 텍스처를 활용한 간단한 얼룩 유리와 IOR, Fresnel을 적용한 굴절 유리를 만들고, Thin Translucent Shading Model을 이용해 색이 있는 유리까지 표현했다.
비슷한 투명 표현처럼 보여도 알파 채널, 굴절, Fresnel, Transmittance Color가 각각 어떤 역할을 하는지 비교하며 정리해 보았다.
Decal 만들기
Decal용 텍스처 준비하기
먼저 Photoshop에서 바닥에 투영할 컬러 무늬를 제작했다.

Decal의 형태와 색상을 담은 원본 이미지와 함께 같은 모양을 흑백으로 표현한 Mask 이미지도 만들었다.
- 흰색 영역: Decal이 보이는 부분
- 검은색 영역: 투명하게 처리할 부분
두 이미지를 언리얼로 Import하면 컬러 정보와 투명 영역을 각각 제어할 수 있다.

Decal Material 만들기
새 Material을 생성한 뒤 다음과 같이 설정했다.
Material Domain: Deferred Decal
Blend Mode: Translucent


Deferred Decal은 메시의 재질을 직접 교체하는 것이 아니라 지정한 영역 안에서 색상이나 표면 정보를 투영하는 방식이다.
Material Graph에서는 다음과 같이 연결했다.
컬러 텍스처 RGB → Base Color
흑백 마스크 → Opacity

위에서 만든 Material을 바닥에 배치하면 아래와 같이 Decal 무늬를 추가할 수 있다.

컬러 이미지와 마스크를 따로 만들면 나중에 색상과 투명도를 독립적으로 수정할 수 있다는 장점이 있다.
반대로 투명 배경을 가진 PNG라면 Alpha 채널을 이용해 한 장의 이미지로 처리할 수도 있다.


알파 텍스처로 얼룩 유리 표현하기
다음으로 투명한 얼룩 텍스처를 이용해 간단한 반투명 유리 Material을 만들었다.
이 Material은 Decal이 아니라 Mesh 표면에 직접 적용하므로 Material Domain은 Surface로 유지하고 Blend Mode만 Translucent로 변경한다.
Material Domain: Surface
Blend Mode: Translucent

투명 PNG의 RGB는 Base Color에, Alpha는 Opacity에 연결했다.
Texture RGB → Base Color
Texture A → Opacity

이 상태에서 레벨에 Plane을 배치한 뒤, Plane에 Material을 적용해 보면 얼룩만 보이고 나머지 영역이 지나치게 투명해 유리판이 존재한다는 느낌이 약했다.

이를 보완하기 위해 검은색 Constant3Vector와 원본 텍스처를 Lerp하고, 텍스처 Alpha를 Lerp의 Alpha에 연결했다.
A: 어두운 기본색
B: 원본 텍스처
RGB Alpha: 원본 텍스처 A
먼저 검은색 Constant3Vector와 원본 텍스처를 Lerp해 유리의 기본색과 얼룩 색상을 구분했다.
이 단계에서는 Lerp가 각 영역에 사용할 색상을 결정한다.
이어서 텍스처 Alpha에 Scalar Parameter를 더한 값을 Opacity에 연결했다.
이를 통해 기존에 완전히 투명했던 배경에도 약한 불투명도가 생기며, Lerp에서 지정한 어두운 기본색이 보이기 시작한다.
Opacity = Texture Alpha + Base Opacity

두 구성을 함께 사용하면 얼룩 영역에는 원본 텍스처의 색상이 나타나고, 나머지 영역은 약간 어두운 반투명 유리처럼 표현된다.

단순히 Opacity를 낮추는 것보다 약간의 기본색과 얼룩을 함께 넣었을 때 유리판이 공간 안에 존재한다는 인상이 훨씬 분명해진다.
굴절이 있는 유리 Material 만들기
알파 텍스처를 이용한 유리는 빠르게 얼룩과 투명한 표면을 표현하는 데 적합하지만, 주변 배경이 꺾여 보이는 굴절까지 표현하지는 못한다.
굴절로 인해 배경이 어떻게 변형되는지 쉽게 확인할 수 있도록 바닥에 무늬가 있는 Material을 적용한 뒤, 그 위에 테스트용 Cube를 배치했다.

굴절이 있는 유리를 만들기 위해 새 Material을 생성하고 다음과 같이 설정했다.
Material Domain: Surface
Blend Mode: Translucent
Refraction Method: Index of Refraction
Lighting Mode: Surface TranslucencyVolume



Base Color에는 밝은 회색을 사용하고, Metallic과 Roughness, Opacity는 각각 Scalar Parameter로 만들었다.

이번 작업에서는 투명한 표면의 반사를 눈에 띄게 확인하기 위해 Metallic을 높이고 Roughness를 낮게 설정했다.
다만 이는 반사를 강조하기 위한 연출용 설정이다.
PBR 기준에서 유리는 비금속 재질이므로, 실제에 가까운 유리 Material을 제작할 때는 Metallic을 0으로 두고 Roughness와 Specular, 주변 반사 환경을 조절하는 편이 적절하다.
Opacity만 낮춘 상태라 뒤쪽이 보이기는 했지만, 주변 배경이 거의 변형되지 않아 투명 플라스틱처럼 느껴졌다.

굴절 설정: IOR & Fresnel
IOR는 Index of Refraction의 약자로, 빛이 물질을 통과할 때 얼마나 꺾이는지를 나타낸다.
대표적인 값은 다음과 같다.
공기: 1.00
물: 1.33
아크릴: 약 1.49
유리: 약 1.52
이번 작업에서는 굴절이 없는 IOR 1과 유리에 가까운 IOR 1.5를 만든 뒤, 두 값을 Lerp에 연결하고 Fresnel을 Alpha로 사용했다.
A: IOR 1.0
B: IOR 1.5
Alpha: Fresnel

Fresnel은 표면이 카메라를 향하는 각도에 따라 다른 값을 출력한다.
표면을 정면에서 바라볼 때는 Fresnel 값이 낮고, 카메라와 표면의 각도가 비스듬해질수록 값이 높아진다.
따라서 현재 구성에서는 유리 중앙의 굴절은 약하고, 실루엣에 가까운 가장자리로 갈수록 굴절이 강해진다.
Fresnel을 적용하고 나면 Cube의 정면은 비교적 안정적으로 보이고, 측면과 가장자리에서는 배경이 더 크게 꺾여 유리의 입체감이 강화된다.

값 하나를 전체 표면에 적용했을 때보다 시야각에 따라 변화하도록 만들었을 때 결과가 훨씬 덜 인공적으로 보인다.
유리 가장자리 강조: Fresnel
유리는 투명도가 너무 낮으면 배경과 섞여 형태가 사라지기 쉽다.
이를 보완하기 위해 Opacity에도 Fresnel 기반 Lerp를 사용했다.
A: Opacity 0
B: Opacity 1
Alpha: Fresnel
여기서 0과 1은 Fresnel에 따른 차이를 명확하게 확인하기 위한 값이다.
실제 장면에 적용할 때는 Center Opacity와 Edge Opacity를 Scalar Parameter로 만들어, 두 값을 더 좁은 범위에서 조절하는 편이 자연스럽다.

이 구성에서는 정면이 더 투명하고, 카메라와 비스듬한 가장자리는 더 불투명해진다.


색이 있는 유리 만들기: Thin Translucent
색이 있는 얇은 유리는 일반 Translucent Material보다 Thin Translucent Shading Model을 사용하는 편이 적합하다.
새 Material을 생성한 뒤 다음과 같이 설정했다.
Material Domain: Surface
Blend Mode: Translucent
Shading Model: Thin Translucent
Refraction Method: Index of Refraction
Lighting Mode: Surface ForwardShading



이후 Material Graph에 Thin Translucent Material 노드를 추가하고, Constant3Vector에서 원하는 색을 선택한 뒤 Transmittance Color에 연결하면 유리를 통과해 보이는 색상을 제어할 수 있다.


Thin Translucent는 얇은 창문이나 한 장의 Plane처럼 실제 두께를 단순화한 유리에 적합하다.
언리얼의 Lumen Global Illumination은 현재 반투명 표면을 통과한 그림자의 색상을 지원하지 않는다.
따라서 유리 자체와 유리를 통해 보이는 배경은 색이 들어가더라도, 바닥에 투영되는 그림자는 같은 색으로 나타나지 않을 수 있다.
색상 값을 지나치게 진하게 설정하면 투명한 유리보다 발광하는 플라스틱처럼 보일 수 있어, 처음에는 채도가 낮은 색부터 조절하는 편이 자연스럽다.
이번 포스트에서는 Decal과 유리 Material을 제작하면서 투명 영역과 굴절을 제어하는 여러 방법을 확인했다.
Decal은 기존 Mesh의 Material을 교체하지 않고 표면 위에 무늬를 투영할 수 있어, 바닥의 얼룩이나 벽의 손상처럼 국소적인 디테일을 추가하기에 적합했다.
컬러 텍스처와 흑백 마스크를 따로 사용하면 무늬의 색상과 투명 영역도 독립적으로 관리할 수 있었다.
유리 Material에서는 단순히 Opacity를 낮추는 것만으로는 유리의 형태가 충분히 드러나지 않았다.
기본색과 얼룩을 추가하거나, IOR과 Fresnel을 이용해 시야각에 따라 굴절과 불투명도가 달라지도록 설정했을 때 입체감이 더 분명해졌다.
또한 Thin Translucent Shading Model과 Transmittance Color를 사용하면 투명한 표면의 반사는 흰색으로 유지하면서, 유리를 통해 보이는 배경에는 원하는 색을 적용할 수 있었다.
결과적으로 Decal은 표면에 필요한 정보를 추가하는 방식이고, 유리 Material은 투명도와 반사, 굴절을 함께 설계하는 작업이라는 차이를 확인할 수 있었다.
같은 유리라도 Mesh의 두께와 사용 목적에 따라 알파 텍스처, IOR 굴절, Thin Translucent 중 적절한 방식을 선택하는 것이 중요하다.
'3D Video Production > Unreal Engine (5.6.1)' 카테고리의 다른 글
| UE 5.6 Landscape & Foliage 사용법 및 Alembic Import (0) | 2026.07.13 |
|---|---|
| UE 5.6 버스 정류장 씬 제작: 시네마스코프 & Foliage 적용하기 (0) | 2026.07.11 |
| UE 5.6 버스 정류장 씬 제작: 네온 간판 & 물웅덩이 머티리얼 만들기 (0) | 2026.07.09 |
| UE 5.6 텍스처 작업: glTF·FBX 임포트 및 ORM 채널 패킹 (0) | 2026.07.07 |
| UE 5.6 다락 작업실 씬 제작: C4D 전선 제작부터 Volumetric Fog, Sequencer까지 (0) | 2026.07.06 |