2016-07-26 153 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