yuchi's Development Home
글 수 201
라이트맵을 직접 만들어서 구워보면 엣지 부분이나 오브젝트 잘리는 부분에서 금이 가는 현상을 볼 수 있다. 이건 사실 맥스에서 구워도 완전히 해결할 방법은 없다. 티가 덜 나게 할 뿐인데 라이트맵의 uv좌표를 디자이너가 직접 펼쳐준다면 확실히 좋은 효과를 볼 수 있지만, 그건 내가 추구하는 방식이 아니므로 어떻게든 자동화시키려고 했다.
처음엔 지오메트리를 3차원상에서 어떻게든 가공해서 처리하려고 했다.
별 짓을 다 해봤는데 영 효과가 별로여서 포기.
그냥 연습삼아 포스트 이펙트로 처리해봤다.
아이디어는 간단하다.
1. 컬링 후 최종 렌더링 직전에 라이트맵을 사용하는 매쉬들만 따로 라이트맵만 씌워서 렌더링. 알파성분이나 별도 텍스쳐에 깊이값을 저장. z값은 비교가 어려우므로 w값으로 저장한다.
2. w값이 유사한 픽셀들에 대해서만 블러링
3. 이후 전체 씬을 렌더링할때 라이트 텍스쳐로부터 라이트맵을 가져오지 않고 방금 블러링한 텍스쳐로부터 스크린좌표계로 투영
이런식인데 일단 효과는 있다. 다만 프레임이 10% - 25% 정도 떨어지기 때문에 이 짓을 해야되나 상당히 회의가 든다. 몇 몇 매쉬에선 더 어색해보이기도 하고.
일단 포스트 이펙트로 처리하는걸로 가닥을 잡고 속도와 퀄리티에서 개선책을 찾아봐야겠다.
라이트맵 엣지 블랜딩 안함
라이트맵 엣지 블랜딩 함