gpt4 book ai didi

javascript - 使用 ThreeJS 将 Vec3 数组传递给顶点着色器

转载 作者:行者123 更新时间:2023-11-30 11:05:32 27 4
gpt4 key购买 nike

如何使用 ThreeJS 将 vec3 数据数组传递给顶点着色器?

air_parcel_pos: {
type: "???",
value: the array of data
}

最佳答案

初始化值必须是对应于 GLSL 数据类型的值数组。

例如

如果uniform变量是vec3的数组

uniform vec3 u_array[3];

那么初始化值可以是THREE.Vector3的数组

var uniforms = {
u_array: {value: [
new THREE.Vector3(1, 0, 0),
new THREE.Vector3(0, 1, 0),
new THREE.Vector3(0, 0, 1)
] }
};

var material = new THREE.ShaderMaterial({
uniforms: uniforms,
vertexShader: // ...
fragmentShader: // ...
});

其他数据类型是 Vector2 , Vector4Color . floatint 的数组可以由值的数组来设置。

关于javascript - 使用 ThreeJS 将 Vec3 数组传递给顶点着色器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55798640/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com