2016-07-26 7 views
2

조각 쉐이더에서 느린 전조 효과를 구현하는 데 도움이 필요합니다. 예를 들어 마우스로 제어되는 DOF 효과가 있습니다. x, y 위치를 변경하면 변수 깊이가 변경됩니다.GLSL의 부드러운 전환

depth = linearize(texture(dofTexture,vec2 mouse).x) 

마우스를 즉시 변경하면 속도가 어떻게 느려지나요? 다른 말로, 상태를 조각 셰이더로 부드럽게 전환하는 방법은 무엇입니까? 외장 유니폼을 사용해야합니까?

답변

1

"키 프레임"으로 결정할 수있는 것 사이에서 선형 보간을 사용할 수 있습니다. 마지막 키 프레임 이후 (0과 1 사이)의 시간과 그와 관련된 텍스처 (시간과 텍스처는 추가 유니폼이 될 것입니다)가 필요합니다.

그러면 조각의 색은 mix(keyframe_color, actual_color, elapsed_time)과 같습니다 (선형 보간은 단지 c = (t - 1) * a + t * b 임)