gpt4 book ai didi

javascript - webgl 应用程序中的 gl-matrix "cannot read property 0 of undefined"

转载 作者:行者123 更新时间:2023-11-29 17:18:08 25 4
gpt4 key购买 nike

我通过阅读 Apress 的 Beginning WebGl for HTML5 开始学习 webgl,它推荐 gl-matrix.js 来处理矩阵运算,当使用 mat4.translate 函数时它具有以下实现

mat4.translate = function (out, a, v) {
var x = v[0], y = v[1], z = v[2],
a00, a01, a02, a03,
a10, a11, a12, a13,
a20, a21, a22, a23;

if (a === out) {
out[12] = a[0] * x + a[4] * y + a[8] * z + a[12];
out[13] = a[1] * x + a[5] * y + a[9] * z + a[13];
out[14] = a[2] * x + a[6] * y + a[10] * z + a[14];
out[15] = a[3] * x + a[7] * y + a[11] * z + a[15];
} else {
a00 = a[0]; a01 = a[1]; a02 = a[2]; a03 = a[3];
a10 = a[4]; a11 = a[5]; a12 = a[6]; a13 = a[7];
a20 = a[8]; a21 = a[9]; a22 = a[10]; a23 = a[11];

out[0] = a00; out[1] = a01; out[2] = a02; out[3] = a03;
out[4] = a10; out[5] = a11; out[6] = a12; out[7] = a13;
out[8] = a20; out[9] = a21; out[10] = a22; out[11] = a23;

out[12] = a00 * x + a10 * y + a20 * z + a[12];
out[13] = a01 * x + a11 * y + a21 * z + a[13];
out[14] = a02 * x + a12 * y + a22 * z + a[14];
out[15] = a03 * x + a13 * y + a23 * z + a[15];
}

return out;

};

通过以下调用

mat4.translate(mvMatrix,[0, 0, -2.0]);  

我收到以下错误:尝试分配 vec3 v 组件时出现“无法读取未定义的属性 0”。

有什么帮助吗?问候

最佳答案

书中使用的glMatrix版本很可能是1.3.7 , 而最新发布的版本是 2.1.0。从 2.0 开始,界面已经更改以保持一致性,并且不会与您在书中看到的相符。

如果您想使用最新最好的 glMatrix,您需要引用 documentation以获得正确的参数。否则只需下载 1.3.7 并按照书中所述使用它。

关于javascript - webgl 应用程序中的 gl-matrix "cannot read property 0 of undefined",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15143378/

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