4. 픽셀 별 속도 버퍼(velocity buffer)를 생성해야 되기 때문에 별도의 패스가 필요하다. MRT를 이용하여 패스를 줄일 수 있다. 모든 scene의 shader에 속도를 계산하고 별도의 render target으로 출력하는 코드가 추가되어야 한다. MRT의 성능이 좋지 않은 하드웨어가 있다. Introduction
5. depth buffer를 pixel shader의 texture input으로 활용한 테크닉 depth buffer와 현재 프레임의 view-projection matrix를 이용하여 world position을 구한다. world position을 이전 프레임의 view-projection matrix와 연산하여 이전 프레임의 viewport position을 구한다. 현재 프레임의 값과 이전 프레임의 값을 빼면 velocity값을 구 할 수 있다. velocity값을 기준으로 여러 번 샘플링 한다. Introduction
6. 기존의 엔진에 쉽게 통합 될 수 있다. It can be performed asa post-processing step
7. H : viewport-space position M : world-view-projection matrix W : world-space position ExtractingObject Positions
8.
9. world position을 이전 프레임의 view-projection matrix와 연산하여 이전 프레임의 viewport position을 구한다. Calculating Velocity
12. 카메라의 움직임에 의해서만 모션 블러가 생긴다. dynamic object는 블러가 생기지 않는다! 별도의 texture를 생성하여 dynamic object의 velocity를 기록한다. 앞에서와 같이 viewport position의 차를 구하면 된다. world-view-projection matrix를 이용한다. Handling Dynamic Objects