如何为Three.js中的属性分配常量值

时间:2019-07-01 10:05:49

标签: javascript three.js

基本上我正在寻找的是相当于vertexAttrib的Three.js。我打算为我的着色器属性分配一个常量值。

1 个答案:

答案 0 :(得分:4)

您可以通过定义Material.defaultAttributeValues来实现。这是一个对象,其中key是属性名称,而value是常量属性值。例如,如果要定义恒定的顶点颜色,可以执行以下操作:

var material = new THREE.MeshBasicMaterial( { vertexColors: THREE.VertexColors } );
material.defaultAttributeValues = {
    color: [ 0, 0, 1 ] // blue
};

这样做时,务必避免使用相同名称的缓冲区属性定义。否则,将使用几何数据,而不使用defaultAttributeValues中的值。

Full demo

无论如何,如果所有顶点的属性均相等,请考虑使用制服。上述示例的更好选择是定义Material.color

three.js R106