놀고먹는CG언니

[UNREAL] 언리얼 Render_03_랜더패스 Layer로 분리하기. 본문

CG작업중에 알게된 꿀팁/Unreal

[UNREAL] 언리얼 Render_03_랜더패스 Layer로 분리하기.

놀고먹는언니 2024. 4. 19. 14:58

합성할때 패스는 어떤 묶음으로 렌더할까?

패스를 누크로 들고가서 합성을 제데로 하려면 보통 4종류로 렌더링 합니다.

-전체 all / CH / BG / 이펙트 + fog  정도. 하지만 언리얼에서는 이렇게 걸면 합성이 쉽지않습니다.

 

언리얼의 경우 이렇게 3종류로 걸어보니 수월했다.

전체 all (모션블러 o) 

CH (모션블러 o, 고퀄로 하거나 약하게 + 근경 fx 포함)

BG (모션블러 o, 고퀄로 하거나 약하게 + 원경 fx 포함)


** CH와 BG는 원래 모션블러를 끄고 > 합성에서 넣는 경우가 많습니다.

하지만 Unreal 의 경우에는 모션블러가 강한 장면일때,

3d에서 모션블러를 넣은것에 비교하면 정확도가 많이 떨어집니다. ㄷㄷ

그래서 렌더 걸때부터 모션블러는 카메라별로 옵션을 높이거나,

이상적인 수치를 넣고 각각 뷰티부터 잘 뽑아내는게 중요합니다.
합성으로 추후에 넣을 시도는 잘 안하는게 좋다는 말씀..!


렌더 작업 순서

1. 전체 all 버전은 모든걸 다 넣고 렌더 겁니다.

2. BG용 렌더패스에는  CH요소에는 Phantom 기능을 체크해 그림자만 나오게 합니다. (이펙트와 fog 모두 제거)

  이때 배경의 멀리 원경으로 배치되있는 FX는 같이 걸어줍니다.

3. CH용 렌더패스에는 layer를 만들어 stencil 기능으로 분리시켜 사용합니다.

(근경 이펙트와 fog 포함해 Layer에 넣어줍니다.)

이때 캐릭터가 들어있는 시퀀스에 배경요소도 있다면  모두 hide 시킵니다.
이작업을 하지않으면 layer에 속하지도 않았는데도
ch 레이어에 출력되는 오류가 있습니다. 

 

 

4. 이펙트와 fog를 분리시킨 다음, BG와 CH요소는 레이어로 빼주고 렌더 걸어줍니다.


렌더 걸때 유용한 기술_Layer 이용해 Stencil로 mask 빼기.

특히 CH용을 렌더걸때 유용하게 사용할수있는 "언리얼 layer 기능" 이 있어서 소개해봅니다.

 

레이어를 사용해 "Actor를 분리하여 패스에 정보를 저장하고"  누크 패스에서 유용하게 사용할수 있는 방법입니다.

누크에서 패스를 가져오면 이렇게 설정한 Actor Layer별로 골라 사용가능합니다.

 


 캐릭터요소를 레이어로 만들어 한꺼번에 넣어줍니다.

** layer 이름 만들때는 _ 언더바가 들어가면
렌더걸때 에러날수있으니 주의!

캐릭터 말고도 따로 분리해서 독립적으로 패스로 쓰고싶은
Actor가 있다면 묶어주면 좋습니다.

시퀀스에 배경요소가 있으면 hide 시킵니다. 
Ch 레이어에 넣지 않았는데도 찍혀나오는 버그가 있음.
Deferred Rendering 패널에
Add Default Layer 옵션 체크.
Actor Layer에 + 버튼을 클릭해 Index를 추가한 다음
아까 만들어놨던 Ch 레이어를 등록해줍니다.

렌더링을 걸어줍니다.
렌더된 패스를 누크에 불러와서 Shuffle 노드를 달아줍니다.


 shuffle 노드의  Input Layer 에서
아까 빼놓았던 Ch 레이어 이름을 찾아
설정해줍니다. 
  렌더링 걸은 pass를 보면,
언뜻봤을때 분리가
안된것처럼 보여집니다. 
모든게 다 출력되서 렌더되어 보이기 때문이에요.

하지만 

Shuffle 노드로 분리해주면 잘 분리된것을
확인할수 있습니다.


저는 인게임 리소스로 렌더를 걸어 보았는데요, 많은 문제점들이 있었습니다.....................

  1. CH와 BG를 motion blur 끄고 렌더후 합성으로 motion blur를 넣으려고 했으나, 
    motion blur를 3d에서 넣은것보다 정확도가 많이 떨어집니다.

    최소한의 motion blur 라도 넣고 렌더후 
    합성에서 더 강하게 주는건 좋지만 아예 off 하고 CH와 BG를 거는것은 안좋다고 결론을 내렸습니다.



  2.  이펙트가 캐릭터한테 뭍어나는 경우에는 무조건 이펙트도 캐릭터랑 같이 렌더 걸어야 됩니다.

이펙트 PP효과는 캐릭터와 배경 모두 뭍어나는데 이런것들이 들어가있으면.... .

결국 BG / CH 나눌필요없이 한꺼번에 같이 걸어야됩니다.

= 정리하자면  이펙트가 화면전체에 뭍어나는 경우에, 렌더 레이어 분리할 필요도 없이 다같이 걸어야된다는 것입니다.

 

총 결론 


모션블러 수치 잘넣고. 이펙트와 포그... 등등  리소스 다 같이 때려넣고 beauty 패스 잘뽑는게 첫번째 로 중요합니다.

전체 다 들어있는 랜더패스를  Base로 하여 합성해야됩니다. 

(영상회사처럼 BG 따로 CH 따로 걸고 하나로 합쳐서 하는 방식의

세세한 합성은 이펙트 리소스 때문에 불가능.)

 

그 이후에 필요한 레이어 리소스가 있으면 BG, CH 분리해서 걸고서,

커스텀 렌더패스를 골라 종류별로 활용, 이쁘게 합성해보는것이 좋습니다.

반응형