UE4,5

리얼환경과 똑같이 셋팅하기 (언리얼러닝-자동차 및 항공우주 고급 기법)

hugjun 2022. 4. 20. 15:05

***핵심요약

실제환경에서 태양광-그림자 비율을 체크하고 언리얼에서도 똑같이 구현한다.

언리얼에서 HDR보기옵션으로 봤을때 L값이 라이트값이다.

0.18 그레이볼 재질의 평면을 찍어봤을때 L값이 0.18이 나와야되며 태양광-그림자 비율도 똑같게 수정해야된다.

디렉셔널라이트의 intensity 값으로 수정해간다.

먼저 라이트를 똑같이 만들고 그다음에 머티리얼을 건드린다.

 

 

 

 

-----------------------------------------------------------------------------------------------------

레퍼런스(리얼월드를 찍은것)이 중요하다. 오염이 없게 잘 만든다.

룩뎁의 핵심은 라이트 세팅이다.

 

----필요한 레퍼런스(실제월드에서 만들어야되는것)

1. 그레이볼 (태양의 방향, 그림자 감쇠에 관한 정보얻기)

2. 크롬볼 ( 태양의 방향)

3. 파노라마 HDRI (스카이라이트로 쓸것)

4. 컬러체커 (화이트밸런스 확인)


--- 태양광과 그림자 사이의 비율
라이트미터로 태양EV와 그림자EV를 비교 ( Sun EV - Shadow EV = x )
2의 x 제곱이 비율 ( 2 to the x = ratio ) 


예제: 15EV - 13EV = 2EV, 2^2 = 4, 태양과 그림자의 비율은 4:1

 

 

---------언리얼에서 셋팅해보기

-언리얼 룩뎁 구성

1. 스카이돔 (비주얼담당 - 실제환경을 캡쳐한것을 입힌다. 스카이라이트를 시각화한다.)

2. 스카이 라이트 (스카이돔을 캡쳐해서 간접광을 만든다)

3. 디렉셔널 라이트 (태양광)

4. 포스트프로세스

5. 리플렉션 캡쳐

6. 레퍼런스및 비교할 스피어 배치

7. 메인 사물 배치

 

-스카이돔

언리얼에 노멀이 뒤집힌 스피어가 있다. 그것을 사용.

 

-스카이 라이트

스카이라이트가 스카이돔을 캡쳐하므로 큐브맵을 만들필요가없어진다.
Sky Distance Threshold 거리내에 스카이돔이 있어야 캡쳐가 됨.

스카이라이트의 Lower Hemisphere is Solid Color 를 끄면 지평선 아래 검은색이 사라진다.

 

-디렉셔널 라이트

sunlight의 기본값은 3.14로 한다 ( 알고리즘상 이게 좋다고함)
색온도 설정 (한낮은 5500, 리얼월드에서 센서로 찍어본 값)

 

-레퍼런스및 비교 사물

화이트는 0.9 블랙은0.03 이 리얼월드값이다.

이런셋팅에서 검게보이지않거나 희게 보이지않는다면 라이트세팅이 잘못된거다.

 

-포스트프로세스

Bloom > Convolution 이 더 사실적인 세팅이다.

bloom을 처음부터 설정해놓으면 리플렉션을 보기좋다.
Camera > Exposure Compensation 값이 노출값 조절이다.

 

-메인 사물

Mesh > High Precision Tangent Normal, High Precision UV를 켠다. (중요하고 디테일해야되는 메쉬만)

 

 

------------------------------------중립적 라이팅환경 만들기

스카이돔-unlit, HDRI
디렉셔널 - 스카이돔이미지를 보면서 태양위치에 정렬
 강도는 파이값이 적당 (3.1415)
 하이라이트가 너무 높을때를 대비해서 Min Roughness
스카이라이트 - 강도 1
포스트프로세스 - Vignette, Grain, Motion Blur, Lens Flares 끄기
노출 min1 max1, bios0
AO/SSR 끄기

 

------ue4에서 세팅해보기

스카이라이트가 스카이돔을 캡쳐하므로 큐브맵을 만들필요가없어진다.
Sky Distance Threshold 거리내에 스카이돔이 있어야 캡쳐가 됨.
sunlight의 기본값은 3.14로 넣어보자
색온도 설정 (한낮은 5500)

 

bloom을 처음부터 설정해놓으면 리플렉션을 보기좋다.
Camera > Exposure Compensation 이 노출값 조절이다.

 

레퍼런스용으로 만든 그레이볼과 크롬볼 이미지를 가져와 맵위에 올려본다.
그레이볼 크롬볼 스피어2개를 만들어서 이미지와 똑같이 될때까지 라이트를 만져본다.

 

스카이라이트의 Lower Hemisphere is Solid Color 를 끄면 크롬볼에 비치고있는 지평선 아래 검은색이 사라진다.

 

HDRI는 반전된 이미지니까 스카이돔 x스케일을 -로 한다.
스카이돔을 회전시켜 레퍼런스 크롬볼에 비친 배경과 같은 위치로 수정한다 (스카이라이트를 리캡쳐해서 확인)
크롬볼에 반사된 하이라이트를 보면서 디렉셔널라이트를 크롬볼에 비친 태양과 같은방향으로 수정한다.

 

그레이볼 재질의 평면을 만든다.
태양과 90도가 되게 배치한다. (태양위치를 복사한뒤 90도 돌리면 쉽다)
평면을 복사한뒤 태양 그림자가 드리우게 위치를 조절한다.


HDR보기옵션을 킨뒤 크로스헤어로 평면의 태양이 비추는 부분과 그림자가 드리운 부분의 라이트값을 얻는다.(L의 값)
두값의 차이로 태양-그림자비율을 구해서 레퍼런스와 같은지 확인한다.


스카이라이트를 끄고 평면에 태양이 비추는 부분의 라이트값을 확인한다. 0.18이 나올때까지 디렉셔널라이트의 강도를 조절한다.


언리얼에 내장된 Macbeth 컬러체커를 가져와서 화이트와 블랙값이 리얼월드값과 같은지 확인해본다 (W0.9 B0.03)
그리고 각 컬러도 리얼월드값과 같은지 확인한다.

 

디렉셔널라이트의 Min Roughness값을 조절해서 블룸이나 하이라이트를 레퍼런스와 비슷하게 만든다.

 

 

*팁: Ctrl+숫자키 를 누르면 화면 위치를 기억한다.  ( 숫자키를 누르면 그위치로 이동)

 

 

 

--------------------- 셋팅값 스크린샷