问题标签 [opengl-es-3.0]
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 - 是否可以验证非颜色渲染内部格式的组件大小?
在 OpenGL ES 3.0 规范中,我们可以阅读:
§ 4.4.5
当相关的framebuffer绑定非零时,如果当前绑定的framebuffer对象不是framebuffer complete,则表6.34中列出的状态变量的值是未定义的。
表 6.34 包含x_BITS
常数。这意味着我们可以创建一个不可颜色渲染的纹理或渲染缓冲区,但我们无法验证它的大小是否合适。
有什么办法可以解决这个问题,还是我的想法完全歪曲并且这些信息是无关紧要的(这会使问题不正确)?
opengl-es - OpenGL ES 2.0 和 OpenGL ES 3.0 有什么区别
OpenGL ES 2.0
我想知道和之间有什么区别OpenGL ES 3.0
。
主要优点是OpenGL ES 3.0
什么?
opengl-es - ETC2 压缩纹理的块大小是多少?
GL_COMPRESSED_RGB8_ETC2
a和GL_COMPRESSED_RGBA8_ETC2_EAC
纹理的块大小是多少?
我正在使用 ((w+3)/4)*((h+3)/4)* 8
for GL_ETC1_RGB8_OES
,但找不到有关 ETC2 的任何信息(Khronos 文档对此不太清楚)。
opengl-es - Android NDK r9 中的 OpenGL ES 3.0
最近的 Android NDK r9 推出了对 OpenGL ES 3.0 的支持。有一个示例samples/gles3jni
演示了如何从 JNI/native 代码中使用 OpenGL ES 3.0。可以通过两种不同的方式构建示例:
- 与 API 级别 11 及更高版本兼容
- 需要 API 级别 18 或更高版本。
两个版本都包含 OpenGL ES 2.0 后备路径,适用于不支持 OpenGL ES 3.0 的设备。但是,第一种情况下的示例使用LOCAL_LDLIBS
选项静态链接到 OpenGL ES 2 -lGLESv2
。在第二种情况下,它以相同的方式与 GLES 3 静态链接。
初始化是这样的:
如何完全省略静态链接并从中动态加载 GLES 2 或 3 .so
?
c++ - 在 Android 上使用 OpenGL ES 3?
我下载了 Android NDK r9 并编译了一个示例应用程序。我有一部升级到 Android 4.3 的 Galaxy Nexus 智能手机。
如何以编程方式确定我的设备是否支持 OpenGL ES 3?
android - 如何在 Android 的着色器中声明 OpenGL 版本?
我正在试验 OpenGL ES 3.0 并在快速参考表中找到以下语句:
“#version 300 es”必须出现在使用 GLSL ES 版本 3.00 编写的着色器程序的第一行。如果省略,着色器将被视为针对版本 1.00。
所以我尝试在着色器的开头添加它,但这只会导致错误
由于无效的顶点着色器,链接失败。
据报道.glGetProgramInfoLog
。如果我用“#version 300 gl”语句删除第一行,着色器就会编译并工作。
这是我的顶点着色器的代码
我还在顶点和片段着色器中添加了版本语句,但仍然得到相同的错误。
我调用setEGLContextClientVersion(3)
了我的 GLSurfaceView,并添加<uses-feature android:glEsVersion="0x00030000" android:required="true" />
到我的清单中以指示该应用程序需要 OpenGL ES 3.0。
我是否错误地阅读了 OpenGL ES 文档并且不需要添加此版本声明?如果我需要添加它,我做错了什么总是导致错误?
android - OpenGL ES 3.0 在 Android 中的 glReadPixels 性能提升
我找到了一些通过 OpenGL ES 3.0 加速 glReadPixels 的方法,但我不确定它是否有效。
- 将glReadPixels()的第五个参数指定为GL_BGRA以避免不必要的混乱。
- 如上所述使用PBO。_
为了验证,我更新到最新的Android SDK和ADT,并尝试使用OpenGL ES 3.0。但是,我找不到GL_BGRA
我预期的定义,也不知道如何使用glMapBuffer()
. 我错过了什么吗?
总结一下,
- 除了使用 glReadPixels() 之外,还有其他更快的方法来访问帧缓冲区吗?
- 如何在 Android 上通过 OpenGL ES 3.0 使用 GL_BGRA 和 PBO?
如果有人知道,请指出我。一些代码片段会更好。提前致谢。
opengl-es - 没有属性的顶点着色器
我们可以有没有属性的垂直着色器吗?
java - 将FBO纹理与后处理后的主图像结合起来以实现发光效果
我正在尝试创建发光效果。我正在使用 OpenGL ES 3.0。我可以使用模板缓冲区创建对象(立方体)的轮廓,所以我对此没有任何问题。我还可以使用 FBO 将此轮廓渲染为纹理,并使用框模糊或高斯模糊实现模糊效果。但是,我遇到问题的部分是将得到的模糊辉光轮廓(即后处理图像)与我的原始对象结合起来,以便它排列立方体的边缘。我可以将模糊的纹理粘贴到屏幕上——但这会将低分辨率的模糊复制到我的高分辨率立方体上——这意味着我再也看不到我的立方体,只能看到模糊的轮廓纹理。
问题:如何将两者合并为屏幕上的一张图像?
我想制作一个包含两个图像的合成图像。
这可能很简单,但我想不出办法。伪代码会很有帮助。
谢谢
ios - ios opengl 3.0 不编译版本
我正在 xcode 5 中试用 opengl 3.0
这就是我编译着色器的方式
这是我的着色器
我尝试:
返回 235,这是预期的。但我明白了
从编译日志中,我尝试了很多版本号,只有 100 个有效。然后我得到
怎么了?我在 iphone 4 64 位模拟器上运行它,在我的 mac air 上使用 Intel HD Graphics 3000 384 MB 图形