有没有办法在three.js中的纹理之间进行自定义转换

时间:2016-04-29 14:37:42

标签: javascript three.js webgl

我正在尝试使用opengl在three.js中创建模型查看器。 我想要做的一个功能是在运行时更改纹理。 我已经做到了。但对我来说似乎有点残酷,我想要更酷的东西。像这样video。 当然我知道这是一个高级的东西,但我没有找到任何关于它的例子。 一些提示?

1 个答案:

答案 0 :(得分:2)

您需要在两个纹理之间进行lerp(线性插值)。片段着色器需要保持两个纹理,然后在加载第二个纹理(即要更改的纹理)后触发lerping。比使用像col = fromTex.rgb * (1.0-t) + toTex.rgb * t这样的操作并在整个时间内更改混合/渲染系数t,直到完全融入第二个纹理。 t可以作为制服发送,从0.0->1.0开始逐渐变化。