首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何找出具体的变量来自哪里?

问如何找出具体的变量来自哪里?
EN

Stack Overflow用户
提问于 2013-07-10 05:55:44
回答 2查看 99关注 0票数 0

我现在正努力学习WebGL和JavaScript,因为我想使用图形化编程技巧来创建3D web应用程序。我已经习惯了用OpenGL进行C++编程。

现在,在做一些教程时,我遇到了一些变量,据我所见,这些变量既不是在任何地方声明的,也不是从其他脚本中包含的。以下是两个例子:

khronos wiki教程经常使用变量g,例如:

代码语言:javascript
复制
g.program = simpleSetup( /* ... */ );

g从未在此范围内声明过。如何找出它所代表的意义?当然,谷歌不会对'g‘或'javascript g’进行太多搜索。

另一个例子是体素初学者指南,它使用mat4,从如下所示开始:

代码语言:javascript
复制
mat4.identity(mvMatrix);

由于了解了OpenGL,我理解这一行代码:从模型视图获取标识矩阵,但是mat4从哪里来?在我自己的项目中使用这一行代码会破坏我的脚本。谷歌为“mat4”这份文件提供了产品,但它也表示只需使用:

代码语言:javascript
复制
mat4.create();

..。如果不采取进一步的措施,这显然是行不通的。

我在这里错过了什么?当我在示例/教程/文档中看到未知变量时,是否总是需要猜测/挖掘?如何在我的脚本中包括mat4?什么是g?

请给我解释一下。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-07-10 17:02:42

关于变量"g“的问题,它只是一个全局可访问的变量,包含了许多其他有用的变量。

在全局范围内,声明var g = {};,然后通过执行g.myGlProgram = simpleSetup(...)或g.myVertexBuffer = ctx.createBuffer(...)将成员添加到g

这只是一个不错的JavaScript技巧

票数 1
EN

Stack Overflow用户

发布于 2013-07-10 06:16:48

我发现mat4来自js/math/gl-matrix-min.js

下面是我如何使用谷歌Chrome做这件事:

  1. 加载页面Rotation.html
  2. 按F12
  3. 切换到Console选项卡并键入mat4,结果看起来它不是一个内置对象,因为我可以看到紧凑的源代码
  4. 切换到源选项卡和切换到Source选项卡,请参见树
  5. 刚刚展开js文件夹,看到数学文件夹并展开
  6. 看到了很多mat4.set mat4.transpose ..。

哦,第一行建议源代码来自https://github.com/toji/gl-matrix/

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17563369

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档