쾌락없는 책임 (공부)/Unreal

[Unreal] CustomDepth Stencil Value 결과가 이상한 경우

허스크 2023. 7. 11. 22:29
반응형

개요

인게임에 Custom Depth를 사용하는 효과가 2개 있습니다. 하나는 인터렉팅이 가능한 오브젝트들에 보이는 아웃라인 효과, 벽 뒤 플레이어를 감지할 수 있는 투시 효과.

 

그런데 아웃라인 효과와 투시 효과는 각자 다른 메쉬들에게 이루어져야 했고 이들을 구분하기 위해 Stencil 값을 활용했습니다. CustomDepth Stencil Value를 활용하면 0~255까지의 수로 구분을 할 수 있어 아웃라인 효과는 50, 투영 효과는 100으로 할당해 줬습니다. 

다만 이후 결과를 보게 되면 이런 이상한 모양이 나오게 됩니다.

의도하던것과 다르게 Mesh의 일부만을 이 효과를 적용시키게 되는 문제가 있었습니다.

 

 

해결 - Project Setting을 해주자

Project Setting > Engine > Rendering > PostProcessing에 보시면 이런 식으로 기본적인 설정이 되어 있을 것입니다. 여기서 Custom Depth-Stencil Pass가 기본적으로 Enabled로 되어 있는데

이를 Enabled with Stencil로 체크해주면 Stencil 값을 활용해서 처리할 수 있게 됩니다. 기본값인 Enabled에서는 Stencil 값을 따로 기록하지 않기 때문에 저런 식으로 이상하게 처리가 되었던 것입니다.

이후 보면 이런식으로 Stencil을 활용한 PostProcess 효과가 적용된 것을 볼 수 있습니다.

반응형