问题标签 [webgl]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
200 浏览

canvas - PGM 和 WebGL 一般信息

我真的可以在这里使用一些帮助。我已经阅读并且我检查过的许多网站都说同样的话——WebGL 使用画布。

但是,我的问题是——即使 OpenGL 也使用 canvas 元素。是什么让 WebGL 与众不同?

另外,如果 PGM 使用画布,默认情况下它是 WebGL 吗?

如果这似乎是一个愚蠢的问题,我很抱歉。:)

0 投票
3 回答
2580 浏览

internet-explorer - WebGL 和 Google 的 Chrome 框架 - 放弃对 IE 的支持

如果你想做基于浏览器的 3D 渲染,WebGL 看起来不错,但在 IE 中根本不支持。由于基于浏览器的 3D 的唯一其他真正选择是使用插件,那么 Chrome Frame 似乎是一个可行的选择...... IE 用户仍然必须安装插件/插件/扩展,但 FF/Chrome 上的其他用户需要不需要。

在企业环境中,我们可能希望安装浏览器插件很难获得许可……但正如我在 IE 上所说,您将不得不安装某种插件,无论它是像 Chrome Frame 这样的通用插件还是特定的插件Unity3D 或您自己的定制插件。

这看起来合理吗,我们可以简单地放弃对这种专业应用程序的 IE 支持,并在需要时让 Chrome Frame 自动在 IE 上运行?

0 投票
1 回答
216 浏览

iphone - 立方体边缘出现白边

当我渲染一个立方体并对其进行纹理处理时,我最终会沿着立方体出现白色边缘。我检查了顶点和纹理坐标,它们对我来说看起来不错。我的纹理是 2 的幂。它是一个包含 4x4 纹理的纹理贴图,其中每个纹理为 16x16 像素。有没有人有什么建议?

0 投票
3 回答
2309 浏览

gwt - 带有像 GWT 这样的交叉编译器的 WebGL(推荐)

我想尝试 WebGL,但不太喜欢 JavaScript。是否有任何可以推荐用于 WebGL 开发的 *-to-JavaScript 编译器,例如GWT (Java 到 JavaScript)?

0 投票
2 回答
1188 浏览

webgl - WebGL 中的失真/水

我对 WebGL 和 OpenGL 还比较陌生,但最近几天我已经把大部分时间都花在了为它编写一个小游戏上。但是,当我想实现像热浪或任何形式的失真之类的东西时,我就陷入了困境。

现在,我可以使用片段着色器制作纹理波纹,但在扭曲对象背后的内容时,我觉得我错过了一些东西。有没有办法获取已经在片段着色器中渲染的像素的颜色?

我已经尝试渲染到纹理,然后让对象的纹理成为那样,但是如果您选择将场景渲染到纹理,您也无法将其渲染到屏幕上。除此之外,如果要渲染到纹理,则该纹理必须是 2 的幂(许多屏幕分辨率不太适合)

任何帮助,将不胜感激。

0 投票
2 回答
10669 浏览

3d - webgl 原生支持哪些文件格式?

3D 文件格式有很多选择,但我至少需要最小的文件大小 + 纹理?我已经尝试了一些,但我需要一些建议吗?

0 投票
2 回答
12226 浏览

webgl - 我应该学习哪个 WebGL 框架?

我在http://www.khronos.org/webgl/wiki/User_Contributions#Frameworks上找到了一个框架列表

然而,它们有什么不同呢?我读过一些文章说,WebGL 是由低级语言驱动的,WebGL 框架只是将它变成高级语言以便于实现。

我已经有很多 jQuery、jQueryUI、C# 背景,我应该选择哪一个?

0 投票
2 回答
499 浏览

javascript - WebGL 或 Flash 的虚拟人库

我正在寻找一种将虚拟人(即,带有骨架的模型,最好带有移动的眉毛/等)加载到网页上的方法。该功能应类似于过时的库 Haptek Player (http://www.youtube.com/watch?v=c2iIuiT3IW8),但允许透明背景。理想情况下,它会在 WebGL/O3D 中,因为它可以直接与我现有的代码集成。但是,如果 Flash3D 或其他插件中已经有实现,我可以快速将我的代码库切换到 actionscript。

我已经调查过尝试使用 npapi 插件将 Haptek Player 顶点发送到 Float32Array(由 WebGL 使用)。我可以将顶点数据放入 javascript 数组中并绘制虚拟人。但是,顶点数据不能更改,因为必须将数组复制到类型化数组 (Float32Array) 以供 WebGL 使用。

感谢您的任何意见!

0 投票
1 回答
5354 浏览

textures - 如何使用 texSubImage2D 在 webgl 中显示精灵?

通过调用 gl.texImage2D,我可以成功显示我的整个精灵 (32x512):

gl.texImage2D(gl.TEXTURE_2D, 0, gl.RGBA, gl.RGBA, gl.UNSIGNED_BYTE, image);

它像我预期的那样被水平挤压,但它至少在屏幕上呈现。我试图只显示工作表中的第一个 32x32 精灵,我假设我可以简单地使用 gl.texSubImage2D 来实现这种效果。我尝试用 texSubImage2D(修改参数)简单地替换 texImage2D,但我只是在屏幕上看到一个黑框。这是我正在使用的代码:

gl.texSubImage2D(gl.TEXTURE_2D, 0, 0, 0, 32, 32, gl.RGBA, gl.UNSIGNED_BYTE, image);

我是否遗漏了有关 texSubImage2D 实施的一些信息?我还有其他步骤吗?还是 texSubImage2D 不是制作精灵表的正确方法?

0 投票
3 回答
387 浏览

html - 我应该学习哪种浏览器图形 API?

我应该学习哪个浏览器的 3D 图形 API?我听说有用于 Firefox 4 的 WebGL,用于 Chrome 的 O3D,而 Shockwave 已经在所有浏览器中使用了十年。可能还有其他人,但我不确定。似乎每个现代浏览器都想要自己的多媒体实现——HTML5 视频的不同编解码器、CSS3 的不同语法等等……这样的分歧非常令人困惑,而且非常类似于 Internet Explorer。我想至少把头绕在 3D 图形前面。理想情况下,我选择的 API 不应该需要插件,使用硬件加速,并且会被尽可能多的未来浏览器支持。