渲染具有静态位置但动态可见性/不透明度的多个立方体的最佳方法?

时间:2015-05-27 11:07:04

标签: three.js

我想渲染很多简单的朗伯式立方体。我尝试将网格单独添加到场景中,但这非常慢。

所以我合并了它们的几何形状。这更快,但是当每个立方体都有自己的材料时,它仍然很慢。我想使用材质可见性来切换每个立方体的绘图。我会使用vertexcolors,但它只控制颜色而不是不透明度/可见性。

我真的只需要两种可见/不可见的材料。但是我觉得创作后面部的材料指数是不能改变的?所以这不起作用。

我尝试了一个shaderMaterial,这很快!但是为了获得类似朗伯的外观,我需要自己编写着色器。对于这么简单的任务来说,这似乎太复杂了。

想法?对每个立方体使用单一材料会更快,但是通过将其移走会产生虚假的可见性吗?

1 个答案:

答案 0 :(得分:0)

抱歉,我无法发表评论,因为我没有足够的代表...

一种方法是使用缓冲区测量,添加不透明度标志作为属性,复制原始的lambert着色器,而不是着色器中的不透明度值,这是一个统一的替换它与您的属性,应该工作。