glreadpixels

    3热度

    1回答

    我正在使用GLUT来为我的窗口系统输出一些图像到屏幕上。 我也想将图像输出到文件。这是一个挑战。在某些窗口分辨率(例如256x256,1024x1024,1920x1200)下,glReadPixels会生成与屏幕完全相同的图像文件。然而,当我调整窗口的大小(前/ 655x652,529x566,做屏幕捕捉,图像zagged和好像像素已经线性位移 任何帮助将不胜感激 编辑 - !我加入一些代码领导

    3热度

    3回答

    我的应用程序依赖于从帧缓冲区读取深度信息。我已经与glReadPixels(0,0,宽度,高度,GL_DEPTH_COMPONENT,GL_FLOAT,& depth_data) 实现这个然而这种不合理的运行速度慢,它从一个30fps的流畅的laggy 3FPS带来了我的申请。如果我尝试使用其他维度或数据进行回读,它将在可接受的级别上运行。 为了给出的概述: 否glReadPixels - 每秒

    11热度

    2回答

    我可以使用像素缓冲对象(PBO)直接从FBO读取像素值(即使用glReadPixels)(即FBO仍附)? 如果是的话, 什么是使用PBO与FBO的优势和劣势? 什么是用下面的代码 { //DATA_SIZE = WIDTH * HEIGHT * 3 (BECAUSE I AM USING 3 CHANNELS ONLY) // FBO and PBO status is good . .

    1热度

    2回答

    我尝试获取呈现的像素颜色。 gl.glColor3f(1f, 0, 0); //draw gl.glReadPixels(lastX - pw/2, MyCanvas.this.getHeight() - (lastY - ph/2), pw, ph, GL.GL_RED, GL.GL_FLOAT, pixelBuffer); float r, g, b; r

    3热度

    1回答

    我试图将顶点数据从纹理复制到顶点缓冲区,然后绘制顶点缓冲区。据我所知,最好的方法是将纹理绑定到fbo,并使用glReadPixels将其复制到vbo。但是,我似乎无法得到这个工作:glReadPixels失败,错误“无效操作”。 更正,示例和替代方法的欢迎。 :) 下面是相关代码: glEnable(GL_TEXTURE_2D) w, h = 32, 32 vbo = glGenBuffe

    1热度

    2回答

    我想实现一个opengl采摘系统,我读了一下,并与glReadPixels碰到一个问题。基本上,场景中的每个节点都会获得一种独特的颜色,并且当发生新的触摸时,它将渲染场景中的任何东西,除了用其独特的颜色ID绘制的节点。我正在尝试使用存储的颜色标识列表来检查输入坐标。 我无法让glReadPixels正常工作。对于像素值,它始终返回0 0 0。我真的很感激任何帮助从它获得正确的像素值。感谢 这里是有

    3热度

    1回答

    我正在为iPhone(iOS 4.1)编写一个OpenGL ES 2.0应用程序。在着色器完成的计算结束时,我需要将一些数据写回CPU。据我所知,这可以通过glReadPixels()来完成。为了保持精确性,我想在着色器之间使用half_float或浮动纹理,这似乎被扩展支持。 问题: 是否可以使用glReadPixels()读取float或half_float纹理? 感谢, 拉尔斯

    10热度

    5回答

    如何截取C++中的OpenGL窗口并将其保存到文件中。 我发现glReadPixels()函数, 但我不知道接下来该做什么。例如,我可以在哪里设置文件路径? 如果不难,请写下代码。

    0热度

    1回答

    我在SDL库的帮助下创建了我的opengl窗口的屏幕截图,但它全是黑色的,我不明白为什么。如何解决它? 代码: SDL_Surface * image = SDL_CreateRGBSurface(SDL_SWSURFACE, current_w, current_h, 24, 0x000000FF, 0x0000FF00, 0x00FF0000, 0); glReadBuffer(GL_FR

    0热度

    1回答

    我正在使用Android进行增强现实项目。该代码捕获相机视频,找到标记并在其上显示立方体。在此之后,找到运动矢量(以在x和y方向上移动的像素的形式)。我需要做的是从GL层读取像素,并在将它们移动运动矢量指定的距离后再次绘制它们。 GL层是使用GLSurfaceView类(它是透明层)指定的。我面临的问题是,当我使用glReadPixels()读取像素并将其转换为480x800阵列(nexus一个屏