0

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

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

我也可以使用单一的白色材料并为几何体的所有面着色。但是,由于每个几何体只有一种颜色但有许多面,因此会创建相同颜色对象的大量重复。

是否有使用three.js 执行此操作的“正确”方式?

4

1 回答 1

1

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

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

于 2013-03-19T14:20:17.543 回答