【发布时间】:2014-05-07 22:46:03
【问题描述】:
我真的很喜欢在threejs 示例中找到的gpgpu demo。在使用着色器并尝试构建一个粒子单元模拟器时,我很快注意到我不需要手动更新纹理制服来更改粒子的位置。 我继续下载示例代码,发现以下几行似乎是多余的:
if (!paused) {
simulator.simulate( delta );
birdUniforms.texturePosition.value = simulator.currentPosition;//redundant?
birdUniforms.textureVelocity.value = simulator.currentVelocity;//redundant?
}
现在我想知道这些值是在哪里设置的,对threejs有更广泛了解的人可以告诉我在哪里看吗?虽然到目前为止我的应用程序运行良好,但我真的很烦恼,我不明白为什么......
编辑:有没有办法找出在threejs中何时/何地更新制服?尝试记录相应材料的制服总是返回null。甚至可以在不使用 shadermaterial 的情况下更新着色器的制服吗?
【问题讨论】:
标签: three.js webgl shader gpgpu