有没有办法使用three.js设置整个THREE.Geometry
对象的颜色?有一些天真的方法我可以做到这一点,但没有一种方法看起来很理想。
我可以克隆材质并为每个几何体设置不同的颜色。基本上,每个几何体与材料具有一对一的关系。但是,这会在GPU上创建许多重量级材质对象以及可能不必要的额外着色器。
我也可以使用单一的白色材料并为几何体的所有面部着色。但是,会产生很多重复的相同颜色对象,因为每个几何体只有一种颜色但有很多面。
使用three.js是否有“正确”的方法?
答案 0 :(得分:1)
然而,这会在GPU上创建许多重量级的材质对象以及可能不必要的额外着色器。
不应该。如果着色器是相同的,它们将被重用。因此,创建与几何形状一样多的材料应该没问题。