MotionBlur 개발 노트

요즘 게임에서 아무나 다 한다는 MotionBlur 작업 완료!!
(DragonNest를 해보고, 멋져 보여서 급하게 만들어 보았음.)

Reference는 굉장히 많은데,

일단 다이나믹 오브젝트에 대한 처리는 너무 처리할 것이 많고, Skinning에 대해서는 엄청 복잡해지기 때문에, 일단 개요만 알고 넘어가기로 하고, KillZone2의 DeferredShading에 대한 문서를 보아도 알 수 있듯이, 그냥 Depth와 이전 ViewProjection을 가지고, 즉 카메라의 이동만을 기준으로 VelocityMap을 만드는 방향이 좋을 듯....(GPUGem3 권에 내용은 이게 전부...)

이전에 만들어 두었던 DepthOfField나 DeferredShading을 위한 Depth는 view space depth가 필요했는데, 이 녀석은 projection된 depth가 필요하다고 해서, 대략...
    DepthBuffer = float4(viewDepth, 0, posDepth, 1);
이런 식으로...

이 작업의 키 포인트는 Depth->Postion으로 사용하는 것.
방법은 약간 다르지만, Deferred Lighting을 할 때, G-Buffer를 Position을 넣어주지 않고, Depth로 Position을 만들면, 텍스쳐를 아낄 수 있으므로(A16xxx ->A8xxxx), 기억해 두었다가 다음에도 응용하기!!!

대략 되었으니, 다음으로 후다닥!!!


트랙백

이 글과 관련된 글 쓰기 (트랙백 보내기)
TrackbackURL : http://cagetu.egloos.com/tb/5071555 [도움말]

덧글

덧글 입력 영역



메모장

내가 먼 훗날에 이 글들을 보았을 때, 좋은 추억이 될 수 있기를...

나를 위해... 나에게 쓰는...

msn: cagetu@hotmail.com
mail: cagetu79@gmail.com
tritter: twitter.com/cagetu