我目前正在尝试学习 WebGL 和 JavaScript,因为我想利用我的图形编程技能来创建 3D Web 应用程序。我习惯了用 C++ 进行 OpenGL 编程。
现在,在做一些教程时,我遇到了一些变量,据我所知,这些变量既没有在任何地方声明,也没有从其他脚本中包含。以下是两个示例:
khronos wiki tutorial不断使用变量g
,例如:
g.program = simpleSetup( /* ... */ );
g
从未在此范围内声明。如何找出它代表什么?当然,Google 不会对 'g' 或 'javascript g' 进行太多搜索。
另一个例子是 voxolent beginners guide它使用 mat4
,从以下内容开始:
mat4.identity(mvMatrix);
由于了解OpenGL,我理解了这行代码:从模型 View 获取单位矩阵,但是mat4来自哪里?在我自己的项目中使用这行代码会破坏我的脚本。 'mat4' 的 Google yield this documentation但它也说只需使用:
mat4.create();
...如果没有进一步的步骤,这显然无法正常工作。
我在这里缺少什么?当我在示例/教程/文档中看到未知变量时,我是否总是需要猜测/挖掘?如何在我的脚本中包含 mat4
?什么是g
?
请帮我解释一下。
最佳答案
关于您关于变量“g”的问题,它只是一个全局可访问的变量,包含许多其他有用的变量。
在全局范围内,声明 var g = {};
,然后,您可以通过执行 g.myGlProgram = simpleSetup 将成员添加到
或 g
(...)g.myVertexBuffer = ctx.createBuffer(...)
这只是一个很好的 JavaScript 技巧
关于javascript - 如何找出特定变量从哪里来?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17563369/