yuchi's Development Home
글 수 201
지난 주까지 Hierachical Z Map Occlusion Culling 작업을 했다.
회사 안다니는 동안 DX11로 이것저것 만든 덕에 크게 고생은 안하고 Compute Shader를 사용하는 DX11용 HiZ Map Occ Culling을 구현했다.
대충 돌아가게 만들었는데 실제로 HiZ Map Occ Culling을 잘 활용하려면 Occlusion을 자동으로 생성해주는 기능이 필요한것 같다.
문서와 예제 소스 코드도 구할 수 있어서 구현해보기로 했다.
일단 모델을 Voxelize하는건 구현했다.
내 식대로 (무식한 방법)으로 해봤으나 몇 가지 문제가 있어서 문서를 다시 읽어보고 소스코드 분석해보고 다시 짰다.
Surface Voxelization과 Soild Voxelization 두 가지로 구현해서 테스트 해봤다.
Solid Voxelization의 경우 테스트용 모델이 완전한 watertight모델이 아니라서 새는 곳이 있다. 미쿠의 머리카락 부분은 새는게 맞고 손목 부근이나 다른 부분은 안쪽에 사용하지 않는 숨겨진 삼각형이 있는것 같다.
대충 어떻게 하면 될지 감은 잡은듯.
생각보다 꽤 재밌다.
좌측으로부터 원본 / Surface Voxelization / Solid Voxelization이다.