设置整个THREE.Geometry对象的颜色

时间:2013-03-18 21:59:35

标签: three.js webgl

有没有办法使用three.js设置整个THREE.Geometry对象的颜色?有一些天真的方法我可以做到这一点,但没有一种方法看起来很理想。

我可以克隆材质并为每个几何体设置不同的颜色。基本上,每个几何体与材料具有一对一的关系。但是,这会在GPU上创建许多重量级材质对象以及可能不必要的额外着色器。

我也可以使用单一的白色材料并为几何体的所有面部着色。但是,会产生很多重复的相同颜色对象,因为每个几何体只有一种颜色但有很多面。

使用three.js是否有“正确”的方法?

1 个答案:

答案 0 :(得分:1)

  

然而,这会在GPU上创建许多重量级的材质对象以及可能不必要的额外着色器。

不应该。如果着色器是相同的,它们将被重用。因此,创建与几何形状一样多的材料应该没问题。