CVOpenGLTextureCacheCreate kCVReturnAllocationFailed
CVOpenGLTextureCacheCreate kCVReturnAllocationFailed
我正在尝试创建一个像这样的 CVOpenGLTextureCache..
NSOpenGLPixelFormatAttribute attrs[] =
{
NSOpenGLPFADoubleBuffer,
NSOpenGLPFADepthSize, 32,
NSOpenGLPFAOpenGLProfile,
NSOpenGLProfileVersion3_2Core,
0
};
NSOpenGLPixelFormat *pf = [[NSOpenGLPixelFormat alloc] initWithAttributes:attrs];
if (!pf)
{
NSLog(@"No OpenGL pixel format");
}
m_glesCtx = [[NSOpenGLContext alloc] initWithFormat:pf shareContext:nil];
[(NSOpenGLContext*)m_glesCtx makeCurrentContext];
CVReturn returnvalue = CVOpenGLTextureCacheCreate(kCFAllocatorDefault, NULL, (CGLContextObj)this->m_glesCtx, [pf CGLPixelFormatObj], NULL, &this->m_textureCache);
但它总是失败并出现错误 -6662,即 kCVReturnAllocationFailed。
任何在 mac OpenGL 方面具有一定专业知识的人都可以帮助我找出它失败的原因..
提前感谢您的帮助..
我的错误..
更改了语句
CVReturn returnvalue = CVOpenGLTextureCacheCreate(kCFAllocatorDefault, NULL,(CGLContextObj)this->m_glesCtx, [pf CGLPixelFormatObj], NULL, &this->m_textureCache);
到
CVOpenGLTextureCacheCreate(kCFAllocatorDefault, 0, [(NSOpenGLContext*)this->m_glesCtx CGLContextObj], [pf CGLPixelFormatObj], 0, &this->m_textureCache);
一切都很顺利。
我正在尝试创建一个像这样的 CVOpenGLTextureCache..
NSOpenGLPixelFormatAttribute attrs[] =
{
NSOpenGLPFADoubleBuffer,
NSOpenGLPFADepthSize, 32,
NSOpenGLPFAOpenGLProfile,
NSOpenGLProfileVersion3_2Core,
0
};
NSOpenGLPixelFormat *pf = [[NSOpenGLPixelFormat alloc] initWithAttributes:attrs];
if (!pf)
{
NSLog(@"No OpenGL pixel format");
}
m_glesCtx = [[NSOpenGLContext alloc] initWithFormat:pf shareContext:nil];
[(NSOpenGLContext*)m_glesCtx makeCurrentContext];
CVReturn returnvalue = CVOpenGLTextureCacheCreate(kCFAllocatorDefault, NULL, (CGLContextObj)this->m_glesCtx, [pf CGLPixelFormatObj], NULL, &this->m_textureCache);
但它总是失败并出现错误 -6662,即 kCVReturnAllocationFailed。 任何在 mac OpenGL 方面具有一定专业知识的人都可以帮助我找出它失败的原因..
提前感谢您的帮助..
我的错误.. 更改了语句
CVReturn returnvalue = CVOpenGLTextureCacheCreate(kCFAllocatorDefault, NULL,(CGLContextObj)this->m_glesCtx, [pf CGLPixelFormatObj], NULL, &this->m_textureCache);
到
CVOpenGLTextureCacheCreate(kCFAllocatorDefault, 0, [(NSOpenGLContext*)this->m_glesCtx CGLContextObj], [pf CGLPixelFormatObj], 0, &this->m_textureCache);
一切都很顺利。