问题标签 [eaglcontext]

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.

0 投票
0 回答
147 浏览

opengl-es - GLKView 不会改变像素格式

GLKView 有一个问题,我经常被困在这里。首先,我创建 EAGLContext 上下文并将其设为最新:

运行正常(我需要第 3 版,所以它很适合我)!然后我创建 GLKView,附加到先前创建的上下文:

没关系。但是这段代码根本没有改变任何东西:(

然后我做一些最后的事情:

但是,在使用 GLKViewDrawableStencilFormatNone 之后,我向 OpenGL 询问深度和模板格式……我得到:

我需要关闭模板缓冲区!我需要设置 24 位格式的深度缓冲区。我也尝试这样做:

我怎么才能得到它?这里有什么问题?谢谢你。

0 投票
1 回答
288 浏览

ios - Opengl Renderbuffer Texture touchmove ios问题

我正在使用 OpenGL 并使用 GLPaint 的示例。我创建了一个应用程序,当用户触摸图像时,它会在图像(纹理)上应用旋转。我有一个问题,我需要保存第一次触摸,然后应用下一阶段,依此类推。但在下一次触摸时,先前应用的效果被删除。
我尝试同时使用深度缓冲区和帧缓冲区,但未能获得所需的结果。我附上了我所有的代码和着色器

还附加着色器如下:

请帮助我调试什么是错误的以及如何解决这个问题。

你也可以从Twirl on Touch-github运行完整的项目

0 投票
0 回答
81 浏览

ios - iPad 和 iPhone 上的 drawImage() 不同?

我有一个像这样的 51x51px 的 glView。

稍后我将image(从 AVpreviewlayer 接收)的中心部分绘制到 glView 的 EAGL 上下文中,如下所示:

基本上代码可以工作,但完全相同的代码在 iPad 和 iPhone5 上的行为不同。结果如下所示。红边矩形是 glView。

iPhone 上的 glView

iPad 上的 glView

在 iPhone 上,红色矩形内的黑色部分(我正在绘制的图像)应该完全填充矩形,例如在 iPad 上......而不仅仅是左下角。

有人知道这里有什么问题吗?

问候克里斯

ps.我在两台设备上都使用 iOS 9.2.1

0 投票
0 回答
532 浏览

ios - 通过带有 alpha 混合的 cicontext 渲染到样本缓冲区?

在 captureOutput 我在样本缓冲区中获取视频帧,我想在捕获的帧之上混合另一个 CIImage 。渲染应该直接进入传递的样本缓冲区。目前我使用这个:

基本上代码可以工作,但有两个问题:

  1. m_overlayImage 的 alpha 分量被忽略,即 m_overlayImage 的半透明部分被渲染函数渲染为黑色。为什么 ?如何解决?

  2. 有什么方法可以将 m_overlayImage 绘制到 sampleBuffer 中的某个像素位置。目前我只能画到(0,0),即左下角。问题是根据文档,“边界”被应用于覆盖图像而不是样本缓冲区。如何将我的 m_overlayImage 渲染到样本缓冲区中的某个位置?

谢谢克里斯

0 投票
1 回答
577 浏览

ios - 绘制时GLKView为空白

我正在尝试使用 GLKView 将图像放入 UITableViewCell 以绘制图像。

我在故事板中有一个原型单元,其中有一个 GLKView。它没有选中 Enable setNeedsDisplay。

原型单元有一个名为 PhotoTableViewCell 的自定义类,它是

这在 UITableViewController 中使用

当我导航到 TableView 时,我得到以下日志语句

我的问题是为什么它的视图是空白的?我确信有一个图像,glkView 位于正确的位置(我已经使用 Xcode 中的预览工具对其进行了检查)

为什么调用 draw(rect:) 而不是 glkView(view:GLKView, drawIn rect:CGRect) ?

我在运行 iOS 9.3 的 iPhone 5 上使用 Xcode 8、swift 3,非常感谢任何帮助

0 投票
1 回答
131 浏览

ios - GPUImage 与其他 OpenGL 上下文的工作失败

在我的项目中,我得到了一个基于GPUImage. 我想创建一个可以像 FaceTime 一样进行视频通话的应用程序,所以我使用这个提供 OpenGL 的过滤器框架ViewA来渲染相机图像,使用我自己的 openGLviewB来渲染远程视频流。现在我遇到了问题。viewA不定期显示viewB的内容。 特别是当 viewA 的框架发生变化时。像这样: 在此处输入图像描述 远程视频像素格式为I420,本地视频像素格式为NV12。所以从技术上讲,viewA必须不能呈现viewB的内容。如您所见:viewA显示viewB. 我假设viewA得到 Y 平面数据viewB不知何故。当viewA显示灰色图像时,它的帧率大大降低。因为viewA属于一个不透明的框架,我只能控制自己的OpenGL渲染部分viewB。我不知道如何解决这个错误。很可能这两个 EAGLContext 是冲突的,或者viewAviewB某种方式共享渲染/纹理缓冲区?任何人,请帮助我。我正在努力这几天。

0 投票
0 回答
82 浏览

ios - 多个 OpenGL 视图如何在 iOS 中共享单个 GL_RENDERBUFFER

假设我有两个视图需要在 renderBuffer 中呈现相同的 OpenGL 内容。如何将这两个视图绑定CAEAGLLayer到 renderBuffer?renderbufferStorage:fromDrawable:只需将最后一个绑定CAEAGLLayerGL_RENDEARBUFFER.

0 投票
1 回答
297 浏览

objective-c - 一个 EAGLContext 导致另一个 EAGLContext 不能与 iOS OpenGL 一起工作

我有两个类来显示不同的 CIImage。它们都有相同的方法来创建 OpenGL 对象,如下例所示。

在一个 glkview 显示 ciImage 之后,我将启动另一个 EAGLContext 来显示不同的 CIImage。另一个 openGL 对象的创建如下代码所示。

我使用相同的方式显示 ciimage,但它们使用不同的方法。1.

2.

如果这两个 EAGLContext 对象同时创建,两个 GLKView 会显示两个不同的视频。如果先创建一个,然后再创建另一个,后一个会正常显示,第一个会卡住。我不知道如何解决它,有人可以帮助我吗?非常感谢。

0 投票
0 回答
315 浏览

swift - EAGLContext 到 UIImage

在 Objective-C 中,我能够使用 glReadPixels 将 EAGLContext 渲染到 UIImage 以从帧缓冲区读取像素数据,使用像素数据创建 CGImage,然后从上下文中检索 UIImage。

我正在 Swift 中尝试一种新方法,但它返回一个空图像。我想从 EAGLContext 创建一个 GLKView,然后使用“快照”来获取 UIImage。传递给 GLKView 构造函数的“myEaglContext”上有数据。

有谁知道为什么这种方法不起作用?

0 投票
2 回答
2235 浏览

swift - 弃用“EAGLContext”的解决方案是什么?

我想为我的应用程序使用本机过滤器,该功能有效,但我想避免将从文档中删除的方法。我在整个互联网上搜索,没有解决方案。

我在整个互联网上搜索,但我没有找到任何解决我的问题的方法。

结果很好,但我担心我的应用程序中的警告无效。谢谢