将OpenGL(GLKView)保存为iOS

时间:2017-05-30 14:59:32

标签: ios objective-c video gpuimage glkview

我有一个GLKView,它会在上面显示带有纹理的可移动模型。我需要将其混合到同时拍摄的视频中。

要将UI的其他部分混合到视频中,我使用GPUImage框架。因此,当我使用GLKView尝试相同的方法时 - 使用GPUImageUIElement将GLKView混合到视频中。我在行中收到错误 GL错误:0x0502

glDrawElements(GL_TRIANGLES, sizeof(shapeTriangles)/sizeof(shapeTriangles[0]), GL_UNSIGNED_BYTE, 0);

在我的CADisplayLink目标程序中:

- (void)render:(CADisplayLink*)displayLink 
{    
    glClear(GL_COLOR_BUFFER_BIT);

    glBufferData(GL_ARRAY_BUFFER, sizeShapeVertices, NULL, GL_DYNAMIC_DRAW);
    glBufferSubData(GL_ARRAY_BUFFER, 0, sizeShapeVertices, shapeVertices);

    [_baseEffect prepareToDraw];

    glDrawElements(GL_TRIANGLES, sizeof(shapeTriangles)/sizeof(shapeTriangles[0]), GL_UNSIGNED_BYTE, 0);

    [_context presentRenderbuffer:GL_RENDERBUFFER];
}

,其中

GLubyte faceShapeTriangles[] = {....}

如果我的方式正确 - 请帮助我理解我错过的内容。如果我完全错了 - 请帮我正确地做。

感谢。

0 个答案:

没有答案