상세 컨텐츠

본문 제목

저비용으로 나무를 머티리얼 활용만으로 최대한 사실 적으로 만들기

Unreal

by Real_Go 2025. 12. 3. 06:27

본문

언리얼에서 나무는 참 애증의 관계다.  

어셋에 있는 나무들은 참 많지만 FBX 모델링 되어있고 있는 그대로는 쓸 지언정 커스텀하기가 까다롭다. 

또한 나무는 LOD 세팅이 가장 중요한 것 중 하나다. Full 모델의 수많은 Vertex 와 Complex polygon 덩어리가 심지어 군집해 
있어야만 자연스럽다니... 렌더링 입장에서는 헬이 아닐 수 없다. 

 

그래서 보통 나무들은 LOD 를 가장 낮춘 버전으로 평면을 + 형 또는 * 형으로 배치한다. 

필자의 이전 글에도 있었는데 

 

문제는 이게 일반적인 머티리얼 세팅만 갈기면 빛에 의해 뾰족한 엣지 섀도윙이 심하게 일어난다는 것이다. 

이는 시각적으로 굉장히 불편감을 준다.

 

광원이 측면을 바라볼 경우 더 확실히 발생한다. 

 

우선 이거에 대한 1차적인 해결은 Lit 을 바꾸는 것이다. 

Unlit 으로 해서 빛에 대한 영향을 최대한 뺀다. 

언릿으로 하면 베이스 컬러가 빠지는데 당황하지 말고 이미시브 컬러에 배치해주면 

 

이런식으로 티가 더 안나게 된다.

너무 밝다 싶으면 이미시브를 Multiply 해서 낮춰주면 된다.

 

하지만 문제가 있다. 

Emissive 라서 밤에도 밝다.

 

 

엌....

 

그래서 지금 나는 UltraDynamicSky 어셋을 썼지만 Directional Light 값을 파싱하든 뭘하는 좋다. 

Material Parameter Collection 을 하나 만들어서 이 낮-> 밤 시간대에 따른 변화를 제공하면 된다.

필자의 경우 0~2400 으로 시:분을 Float 으로 표현하는 값을 매핑해야되는데

12시에 제일 밝고 밤에는 제일 어두우니까 가우시안, 코사인, 톱니 모양 등 종형 형태의 함수를 활용하여 Intensity 를 조절하고 

이를 이미시브 컬러에 같이 반영할 필요가 있었다. 

 

 

이렇게 MPC 를 Scalar paramter 의 name 을 선언해주고 

이 그래프는 대략 0~2400 Domain 을 -1~1 로 정규화 Domain으로 바꾼다음 

(0.5(cos(ㅠx)+1))^2 를 한건데 

그래프로 이해하자면 아래와 같다.

 

어쨌든 이렇게 해서 가변적으로 바꾸면 머티리얼에서 

그냥 MPC 를 냅다 드래그 한다음에 None 으로 뜨는거 아까 세팅해놓은 Intensity 로 바꿔주고 Multiply 하면 된다.

 

그러면 낮에는 이러다가

 

밤에는 요렇게...

 

어쨌든 핵심은 

Plane 3개 교차로 만든 야매 나무는 

 

위에서 보면 이런데 

빛에 민감하면 더 구려보이므로 Unlit + Emissive 로 최대한 덜 티나게 할것 

 

그리고 필드의 광원 위치나 강도, 낮밤 등에 따라 Emissive 를 Control 할 수 있는  Material Paramete Collection 의 value 값 
파싱 등으로 해결 할 수 있다는 점을 눈여겨 보면 될 것 같다.

 

다음에는 나무가 살짝씩 바람에 흔들리는 머티리열 연출을 해보이도록 하겠다.

 

 

관련글 더보기