opengl-es相关内容

ld: 未找到架构 x86_64 (Xcode 4)//opengles.o 的符号

我正在使用外部库制作一个 xcode 命令工具应用程序,但出现了一些错误. 我试图解决的问题: 使用不同的编译器构建 删除 GLES 文件夹并重新添加 在 32 和 64 上构建它 我是否遗漏了有关 opengles.cpp 的内容? 如果您知道下一步可以做什么,请说出来,您可以在下面找到有关项目和错误的所有信息.如果您需要更多信息,我很乐意为您提供帮助.另外,如果您知 ..
发布时间:2022-01-09 09:29:01 移动开发

如何在 OpenGL ES 2.0 中创建带有模板缓冲区的 FBO?

我需要 3GS 上的模板缓冲区来渲染平面阴影和多边形offset 无法完美运行,仍然存在 z-fighting 问题.所以我用模板缓冲区使阴影正确,它适用于win32 Gles2模拟器,但不是在 iPhone 上.在我给整体添加了后期效果之后场景.即使在 win32 gles2 模拟器上,模板缓冲区也无法工作. 我尝试将模板缓冲区附加到 FBO,但屏幕变为黑色的.这是我的代码, glGen ..
发布时间:2022-01-09 09:28:53 移动开发

用于渲染精灵的纹理采样坐标

假设我们有一个纹理(在本例中为 8x8 像素),我们想将其用作精灵表.其中一个子图像(精灵)是纹理内部 4x3 的子区域,如下图所示: (显示四个角的归一化纹理坐标) 现在,基本上有两种方法可以将纹理坐标分配给 4px x 3px 大小的四边形,以便它有效地成为我们正在寻找的精灵;第一个也是最直接的方法是在子区域的角落对纹理进行采样: //纹理坐标GLfloat sMin = ( ..
发布时间:2022-01-09 09:28:47 移动开发

gpus_ReturnGuiltyForHardwareRestart 崩溃

应用程序在 presentFrameBuffer 中崩溃(在前台运行时,不会发生中断). 它没有在第一帧崩溃,它画了一段时间然后突然崩溃. 我没有重现的确切步骤,但似乎与绘制特定内容有关,但我仍然没有通过应用程序报告 openGL 错误,包括在 presentFrameBuffer 之前的一次错误检查.如果我在 presentFrameBuffer 之前添加 glFinish 会在 g ..
发布时间:2022-01-09 09:28:39 移动开发

为什么 eglMakeCurrent() 因 EGL_BAD_MATCH 而失败?

我正在使用 opengl/egl 为 Android 开发.我的应用需要第二个上下文来从第二个线程加载纹理. 我的代码在 android 2.3 上运行良好,但是当我在 4.0.3 android 设备或模拟器上尝试该代码时,eglMakeCurrent() 失败并显示 EGL_BAD_MATCH. 第二个上下文的初始化和它的像素缓冲区也都工作正常,所以我不确定从哪里开始寻找这个错误. ..
发布时间:2022-01-09 09:28:31 移动开发

OpenGL ES 2.0 纹理未在某些设备上显示

我找到了一个名为 Rajawali 我正在学习如何使用它.我遵循了最基本的教程,它使用 1024x512 大小的 jpg 图像为纹理渲染一个 shpere 对象.它在 Galaxy Nexus 上运行良好,但在 Galaxy Player GB70 上却无法运行. 当我说它不起作用时,我的意思是对象出现但纹理没有渲染.最终,我更改了一些在创建纹理时用于 Rajawali 框架的参数并使其工作 ..
发布时间:2022-01-09 09:28:22 移动开发

iOS 上的 CVOpenGLESTextureCache 与 glTexSubImage2D

我的 OpenGL 应用程序使用 OpenGL 全屏渲染纹理并定期更新其中的一部分.到目前为止,我一直在使用 glTexImage2D 推送我的初始纹理,然后使用 glTexSubImage2D 更新脏区域.为此,我使用单缓冲.这很好用. 我已经看到可能有另一种方法可以使用 CVOpenGLESTextureCache 实现相同的目标.保存在纹理缓存中的纹理引用一个 CVPixelBuffe ..
发布时间:2022-01-09 09:28:13 移动开发

使用 OpenGL ES 在运行时为图像添加鱼眼效果

我的情况是我从服务器接收到不同的图像到 iPhone 客户端. 我需要做的是为这些图像添加鱼眼效果. 我的幻觉是我可以构建一个圆顶对象,然后在图像出现时将它们附加到它. 如果有人能给我任何正确方向的指点,我将不胜感激. 解决方案 你有没有试过看 Paul Bourke 的例子OpenGL的代码?我不知道它是否与 OpenGL-ES 兼容.请注意有关使用“glCopyTex ..
发布时间:2022-01-09 09:27:59 移动开发

WebGL/OpenGL:性能比较

出于教育目的,我需要比较 WebGL 与 OpenGL 的性能.我有两个用 WebGL 和 OpenGL 编写的等效程序,现在我需要获取它们的帧速率并比较它们. 在 Javascript 中,我使用 requestAnimationFrame 来制作动画,我注意到它会导致帧速率始终保持在 60 FPS,并且只有在我切换选项卡或窗口时才会下降.另一方面,如果我总是递归调用渲染函数,窗口会因为明 ..
发布时间:2022-01-09 09:27:50 前端开发

如何测量 OpenGL ES 的真实 FPS 性能?

我意识到这是两个不同的东西: 绘图,并将其显示在屏幕上. 因此,虽然您可以以 60 FPS 的速率从 CADisplayLink 进行每次调用,但如果您的绘图操作花费的时间略长于 1/60 秒,那么理论上您最终会得到 30 FPS,因为您错过了其他所有操作有机会通过渲染管道. 好的;知道了这一点,记住开始 NSTimeInterval 并在运行循环中增加一个帧计数器,然后在结束时 ..
发布时间:2022-01-09 09:27:43 移动开发

如何用手指移动 OpenGL 方块?

实际上,我有一个适用于 Android 1.5 的应用程序,它带有一个 GLSurfaceView 类,可以在屏幕上显示一个简单的方形多边形. 我想学习如何添加新功能,即用手指触摸方块移动方块的功能.我的意思是当用户触摸方块并移动手指时,方块应该粘在手指上,直到手指松开屏幕. 我们将不胜感激任何教程/代码示例/帮助. 我的代码: public class MySurfaceVi ..
发布时间:2022-01-09 09:27:35 移动开发

检测用户对 OpenGL 方块的触摸

可能重复: 我如何确定什么是从屏幕触摸到 3D 空间? 我正在开发一个 Android 应用程序.我也在使用 OpenGL 图形. 我在屏幕上绘制了一个正方形,我想让用户在触摸它时移动它.换句话说,当用户将手指放在方块上时,他应该能够移动方块.如果他触及广场外,什么都不会发生. 如何检测用户何时触摸正方形? 谢谢. 解决方案 其他答案提供的挑选教程在这里不适用;其 ..
发布时间:2022-01-09 09:27:28 移动开发

对顶点使用 GLshort 而不是 GLfloat

我正在尝试将我的程序从 GLfloat 转换为 GLshort 以获得顶点位置,但我不确定如何在着色器中表示它.我在着色器中使用了 vec3 数据类型,但 vec3 代表 3 个浮点数.现在我需要代表 3 条短裤.据我所知,OpenGL 没有用于短裤的向量,那么在这种情况下我应该怎么做? 解决方案 我不确定如何在着色器中表示它. 这是因为这些信息并不存在于着色器中. glV ..
发布时间:2022-01-09 09:27:21 其他开发

如何从屏幕确定 3D 空间中触摸的内容?

如何在我的 OpenGL ES 1.1 android 应用程序中使用 gl.gluUnproject 来确定用户触摸屏幕时选择了什么? 我的理解是触摸事件产生一条线,我必须找到它相交的第一个“东西". 有没有关于如何做到这一点的教程? 解决方案 我的一个想法是缓存调用 gluProject 的结果.这可能仅在您处理固定相机时才实用.在相机视角发生任何变化后,我可以重新生成这个 ..
发布时间:2022-01-09 09:26:59 移动开发

滚动纹理的 GLSL 着色器

如何在平面上滚动纹理?所以我有一个带有纹理的平面,我可以使用着色器从右向左滚动(无限)它上面的纹理吗? 解决方案 使用设置纹理环绕模式 glTexParameteri(TextureID, L_TEXTURE_WRAP_S, GL_REPEAT) 将名为 Time 的浮动统一添加到纹理着色器中 在获取纹理样本时使用类似 texture2D(sampler, u + T ..
发布时间:2022-01-09 09:26:53 其他开发

OpenGL es 2.0 读取深度缓冲区

据我所知,我们无法在 OpenGL ES 2.0 中读取 Z(深度)值.所以我想知道我们如何从 2D 屏幕上的一个点获取 3D 世界坐标? 其实我有一些随机的想法可能会奏效.由于我们可以使用 glReadPixels 读取 RGBA 值,我们如何复制深度缓冲区并将其存储在颜色缓冲区中(比如 ColorforDepth).当然需要有一些好的约定,这样我们就不会丢失深度缓冲区的任何信息.然后当我 ..
发布时间:2022-01-09 09:26:44 其他开发

如何在 iOS 中使用 3-D 纹理?

我在 OpenGL ES 2.0 中找不到来自 OpenGL 的 glTexImage3D() 函数.那么如何使用 3-D 纹理,例如:.tga 文件? 有人知道如何在 OpenGL ES 2.0 中使用 3-D 纹理吗? 解决方案 OpenGL ES 1.x 和 2.x 不要求支持 3d 纹理 - 参见例如glBindTexture,它只列出了 GL_TEXTURE_2D 和 GL ..
发布时间:2022-01-09 09:26:37 移动开发

WebGL - 渲染深度到 fbo 纹理不起作用

对于后处理着色器,我需要帧缓冲区的颜色和深度缓冲区.访问颜色缓冲区工作正常,但我在创建深度缓冲区时遇到问题.尝试将 texImage2D 用于深度纹理时,我总是收到 INVALID_ENUM 错误: texImage2D 中的 WebGL 错误 INVALID_ENUM(TEXTURE_2D, 0, DEPTH_COMPONENT16, 1536, 502, 0, DEPTH_COMPONENT ..
发布时间:2022-01-09 09:26:22 其他开发

获取支持的 GLSL 版本

在使用英特尔显卡的笔记本电脑上开发时,在编译顶点着色器时,我得到了这个: 0:1(10):错误:不支持 GLSL 3.30.支持的版本有:1.10、1.20、1.30、1.00 ES 和 3.00 ES 好的,所以我调整着色器以使用版本 300 ES.同时,我想检查当前驱动程序/卡支持的 GLSL 版本,所以我使用这个: glGetString (GL_SHADING_LANGUAGE_VE ..
发布时间:2022-01-09 09:26:05 其他开发