glreadpixels相关内容

glReadPixel 停止使用 iOS6 Beta

可能重复: 为什么 glReadPixels() 在此代码中失败iOS 6.0? 我目前在 Appstore 中有一个使用 Cocos2D 框架的 App.对于碰撞检测,我使用 glReadPixels.屏幕只有白色和黑色像素,检测到黑色像素意味着碰撞.在 iOS 5.1.1 之前一切正常,但在 iOS6 Beta(全部)中 glReadPixels 停止工作.现在 glReadPixel ..
发布时间:2022-01-21 17:36:02 移动开发

将 RGBA 转换为 ARGB (glReadPixels -> AVAssetWriter)

我想在 AVAssetWriter 的帮助下将使用 OpenGL 渲染的图像记录到电影文件中.问题出现了,从 OpenGL 帧缓冲区访问像素的唯一方法是使用 glReadPixels,它仅支持 iOS 上的 RGBA 像素格式.但是 AVAssetWriter 不支持这种格式.在这里,我可以使用 ARGB 或 BGRA.由于可以忽略 alpha 值,我得出的结论是,将 RGBA 转换为 ARGB ..
发布时间:2022-01-09 09:38:11 移动开发

使用带有多重采样的 glReadPixel() 读取数据

目前我正在尝试从帧缓冲区读取像素数据,以便在 IOS 中捕获屏幕.使用以下代码设置帧缓冲区时,GlreadPixels 命令可以正常工作:- //缓冲区//创建一个与颜色缓冲区大小相同的深度缓冲区.glGenRenderbuffersOES(1, &m_depthRenderbuffer);glBindRenderbufferOES(GL_RENDERBUFFER_OES, m_depthRen ..
发布时间:2022-01-09 09:37:37 移动开发

如何像 iPhone 中的 Talking Tomcat 应用程序一样录制屏幕视频?

嘿,我正在尝试记录我的游戏的游戏玩法,以便我可以将其视频从设备本身上传到 youtube……我正在尝试做与 iPhone 的 Talking tomcat 应用程序相同的事情……录制视频然后播放等等... 我使用 glReadPixels() 读取帧缓冲区数据,然后借助 AVFoundation 框架中的 AVAssetWriter 将其写入视频.但是,只有在使用 glReadPixels ..
发布时间:2022-01-09 09:23:15 移动开发

用 glReadPixels 读取纹理字节?

我想将原始纹理数据转储到磁盘(以便稍后读取),但我不确定 glReadPixel 是否会从当前绑定的纹理中读取. 如何从纹理中读取缓冲区? 解决方案 glReadPixels 函数从帧缓冲区读取,而不是从纹理读取.要读取纹理对象,您必须使用 glGetTexImage 但它在 OpenGL ES 中不可用 :( 如果您想从纹理中读取缓冲区,那么您可以将其绑定到 FBO(Fram ..
发布时间:2022-01-09 08:54:40 移动开发

如何在OpenGL中截取屏幕截图

如何在 C++ 中截取 OpenGL 窗口的屏幕截图并将其保存到文件中. 我找到了 glReadPixels() 功能,但我不知道接下来要做什么.例如,我可以在哪里设置文件路径? 如果不难,请写代码. 解决方案 这段代码捕获 OpenGL 窗口并导出到 BMP 文件.您必须有 FreeImage 库才能运行它. //制作 BYTE 数组,因子为 3,因为它是 RBG.BYTE ..
发布时间:2021-12-19 17:47:29 C/C++开发

将数据从 glReadPixels() 转换为 OpenCV::Mat

我想使用 glReadPixels() 从动画中获取每个 OpenGL 帧,并将数据转换为 OpenCV::Mat.我知道 glReadPixels() 从下到上,从左到右按行获取数据.另一方面,OpenCV 以不同的方式存储数据. 有没有人知道任何可以帮助我将数据从 glReadPixels 转换为 C++ 中的 OpenCV:Mat 的库或任何教程/示例? 总结 OpenGL ..
发布时间:2021-12-10 20:38:29 C/C++开发

如何使用 LWJGL 制作简单的截图方法?

所以基本上我现在正在与 LWJGL 混为一谈,但我突然停止了围绕 glReadPixels() 的烦恼. 以及为什么它只能从左下角 -> 右上角读取. 所以我来这里是为了回答我自己的问题,因为我已经弄清楚了所有这些内容, 我希望我的发现可能对其他人有用. 作为旁注,我正在使用: glOrtho(0, WIDTH, 0 , HEIGHT, 1, -1); 解决方案 这里是我的屏幕捕 ..
发布时间:2021-11-18 22:40:32 Java Web开发

如何在 android 的单独线程上运行 GLES20.glReadPixels?

我目前正在使用 ARCore 对图像进行分类并将对象放在图像上.但似乎 ARCore 相机没有提供任何获取像素缓冲区的方法.然后我遇到了如何使用 ARCore 用相机拍照根据这一点,我们可以使用 GLES20.glReadPixels 从 OpenGL 复制帧.如果我一次传递每一帧,我的分类器工作正常,但是当我将 GLES20.glReadPixels 放在单独的线程中以获取像素缓冲区时,我得到的 ..
发布时间:2021-11-17 03:31:04 移动开发

在着色器程序之间传递数据

好吧,我将保持尽可能简单.我想在着色器程序之间传递数据.我目前正在使用readPixels来执行此操作,但我认为这可能会减慢操作速度,并且正在探索更快的选项. 我的程序做什么: program1将我的渲染渲染到画布上. program2在要传递给program1的着色器中执行了一些出色的操作. 我的问题: 是否可以使用program2中的vbo并将其传递给program1 ..
发布时间:2020-07-14 02:50:32 其他开发

具有float或half_float纹理的OpenGL ES 2.0:glReadPixels()

我正在为iPhone(iOS 4.1)编写OpenGL ES 2.0应用程序.在着色器中完成计算的最后,我需要将一些数据写回CPU.据我所知,这可以通过glReadPixels()完成.为了保持精度,我想在着色器之间使用half_float或float纹理,这似乎受到扩展的支持. 问题: 是否可以使用glReadPixels()读取float或half_float纹理? 谢谢 L ..
发布时间:2020-05-21 00:47:09 移动开发

如何在Android的单独线程上运行GLES20.glReadPixels?

我目前正在与ARCore一起对图像进行分类并将对象放在图像上.但是,似乎ARCore相机没有提供任何获取像素缓冲区的方法.然后我遇到了如何使用ARCore用相机拍照然后我们可以使用 GLES20.glReadPixels 从OpenGL复制帧.如果我一次通过每个帧,我的分类器就可以正常工作,但是当我将 GLES20.glReadPixels 放入一个单独的线程中以获取像素缓冲区时,我将得到全零.所 ..
发布时间:2020-05-21 00:46:32 移动开发

glReadPixels仅保存1/4屏幕尺寸的快照

我正在为客户开发增强现实应用程序. OpenGL和EAGL部分已在Unity 3D中完成,并在我的应用程序中实现为View. 我现在需要的是一个按钮,用于捕捉OpenGL内容的屏幕快照,这是最背面的视图. 我尝试自己编写它,但是当我单击带有分配的IBAction的按钮时,尽管它确实将它保存到了相机胶卷中,但它只保存了屏幕的1/4(左下角). 因此,基本上,我如何保存整个屏幕尺寸, ..
发布时间:2020-05-21 00:34:08 移动开发

使用深度缓冲区和抗锯齿技术时,通过glreadpixel()读取数据时出现问题

我想使用glreadpixel()捕获游戏的屏幕. 它在ios版本3.1.1的2g iphone上也可以在模拟器上正常工作. 但在ios版本4.2.1的ipad上却没有.我开始知道与此有关的问题.适用于特定设备(ipad)上的ios 4.0以上版本 我们绑定深度缓冲区并使用抗锯齿技术.当我们使用opengl的glreadpixel()从帧缓冲区捕获数据时,将在目标缓冲区中返回全0 ... 如 ..
发布时间:2020-05-21 00:28:53 移动开发

将RGBA转换为ARGB(glReadPixels-> AVAssetWriter)

我想借助AVAssetWriter将用OpenGL渲染的图像记录到电影文件中.出现了问题,从OpenGL帧缓冲区访问像素的唯一方法是使用glReadPixels,glReadPixels仅在iOS上支持RGBA像素格式.但是AVAssetWriter不支持此格式.在这里,我可以使用ARGB或BGRA.由于可以忽略alpha值,因此得出结论,将RGBA转换为ARGB的最快方法是为glReadPixe ..
发布时间:2020-05-21 00:17:43 移动开发

从glReadPixels创建HBITMAP

我需要根据glReadPixels()调用返回的数据创建一个HBITMAP: HDC hCompDC = CreateCompatibleDC(NULL); HDC hDC = GetDC(); m_hClipboardBitmap = CreateCompatibleBitmap(hDC, size.cx, size.cy); if ( m_hClipboardBitmap == NU ..
发布时间:2020-05-21 00:05:08 C/C++开发