问题标签 [webgl-extensions]
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.
opengl-es - OES_texture_float 扩展使用
如何使用 OES_texture_float 扩展?我不明白有必要指定函数 texImage2D 的参数。
你需要写什么而不是“???”
javascript - 你如何在 JavaScript 中转换为半浮点数?
我希望能够OES_texture_half_float
在 WebGL 中使用扩展并提供我自己的数据,但Float16Array
JavaScript 中没有。那么如何生成半浮点数据呢?
javascript - 我们如何在 webgl 的两个画布中显示相同的对象?
我的情况是我有两个画布,我想在两个画布中显示相同的对象(实际上我必须在每个画布中显示不同的对象,但我想首先在两个画布中显示相同的对象),但我我无法做到这一点,有人可以帮我这样做吗?
我的尝试是:(我有两个灰色的画布(canvas ans canvas2),它在两个中都显示多个正方形,但它只显示在一个中),如何在两者中显示。我要尝试的代码是:
javascript - 在 webgl 中绘制多个对象
我是 WebGL 初学者并尝试绘制多个对象,我已经渲染了一个,现在要绘制多个。多对象渲染的教程非常少,我可以在这个链接上找到一个http://webglfundamentals.org/webgl/lessons/webgl-drawing-multiple-things.html
我尝试根据它更改代码但它不起作用,有人可以纠正问题并给出解决方案并解释我的尝试有什么问题吗?
我的完整代码是:
请向我解释解决方案,以便我理解并在未来保留它。谢谢
glsl - 在我的着色器中实现 phong 着色(过度纹理)的错误
我正在尝试学习 webGL,尝试按照链接http://voxelent.com/html/beginners-guide/chapter_3/ch3_Sphere_Phong.html上的此示例代码实现 phong 着色
我在着色器编译时遇到两个错误,因此没有显示月亮,这应该是显示的,因为我正在关注 Github 的第 11 课,他们从矩形制作球体,我得到的错误是:
我的完整代码是:
编辑2:
如何使用 phong 阴影效果显示月亮。有人可以帮我吗?
webgl - WebGL 中多个绘制缓冲区上的 readPixels
我使用 webgl_draw_buffers 扩展制作了一个帧缓冲区对象,以提供三个颜色缓冲区:
我将它们填充到片段着色器中:
现在,当我使用 readPixels 时,我总是得到colorBuffer0
:
我无法使用 readPixels 检索其他两个颜色缓冲区。我可以在使用 readPixels 之前绑定每个缓冲区吗?我怎样才能读取其他两个颜色缓冲区?
javascript - 通过 WEBGL_depth_texture 渲染缓冲区对象和深度纹理有什么区别?
在我可以使用扩展 WEBGL_depth_texture 的环境中,我猜没有使用渲染缓冲区对象(RBO)。深度纹理比使用 RBO 更方便,因为我可以将它用作着色器资源。
但我也认为可能存在一些不同的实现、历史原因或性能问题。
javascript - ND-Buffer 和 G-Buffer 有什么区别?
我是 WebGL 的菜鸟。我读了几篇关于 ND-Buffers 和 G-Buffers 的文章,好像它是 WebGL 开发的战略选择。
ND-Buffers 和 G-Buffers 与渲染管线有何关系?ND-Buffers 仅用于前向渲染,G-Buffers 仅用于延迟渲染吗?
如何实现两者的 JavaScript 代码示例对我理解差异很有用。
webgl - 如何使用 OES_texture_float 扩展?并为此创建一个纹理作为浮点纹理?
如何使用 OES_texture_float 扩展?并为此创建一个纹理作为浮点纹理?
作为 webGL 1 扩展列表:
如何将浮点图像作为纹理输入?
ios - WebGL textureCubeLod 在 chrome/safari 而不是 ios 上导致接缝
我正在研究three.js 中PBR 着色器的基于图像的照明部分。我正在使用通过 DDSLoader 引入的 .dds 立方体贴图纹理。
我在 chrome 和 safari 上的低位接缝处出现了可怕的接缝。疯狂的部分是材料在 ios 上看起来很棒。
我尝试使用所有 mag 和 min 过滤器,但没有成功。我也尝试过降低精度,但这也没有效果。我认为 ios 可能有一种处理与桌面不同的纹理的方式。较低的 lod 看起来好像它们没有被正确过滤,并且接缝变得越来越戏剧化,细节越低。
下面是一个 codepen 的链接,它说明了接缝从左侧的 LOD 0.0 到右侧的 LOD 7.0 变得更加明显。
请在桌面 chrome 或 safari 上试用,然后与 ios 进行比较。(firefox 和 android 不支持 textureCubeLodEXT)。
我想知道如何在桌面版 chrome 和 safari 上进行这项工作。ios有不同的默认过滤器吗?ios 在做什么或不做什么来给我他们正在寻找的结果?
注意:.dds 纹理每个通道和四个通道保存 8 位。