Ich möchte einen NSOpenGLPixelBuffer für Offscreen-Rendering erstellen. Im Moment kann ich es überhaupt nicht einleiten. Hier ist der Code:Erstellen eines Pixelpuffers Objective-C
NSOpenGLPixelFormatAttribute attribs[] = {
NSOpenGLPFAPixelBuffer,
NSOpenGLPFANoRecovery,
NSOpenGLPFAAccelerated,
NSOpenGLPFADepthSize, 24,
(NSOpenGLPixelFormatAttribute) 0
};
NSOpenGLPixelFormat* format = [[[NSOpenGLPixelFormat alloc] initWithAttributes:attribs] autorelease];
NSOpenGLPixelBuffer* pixBuf = [[NSOpenGLPixelBuffer alloc]
initWithTextureTarget: GL_TEXTURE_2D
textureInternalFormat: GL_RGBA
textureMaxMipMapLevel: 0
pixelsWide: 32
pixelsHigh: 32];
NSLog(@"pbuf address: %p", pixBuf);
Ich habe versucht, mit Pixel-Format und Breite Geige, Höhe, aber nichts scheint zu funktionieren. Ich bekomme für den pixBuf immer nil. Ich benutze Xcode 9 auf MacOS 10.13. Es sagt, der NSOpenGLPixelBuffer ist veraltet, aber es sollte immer noch funktionieren, oder?
So scheint es, dass die alte API einfach nicht funktionieren wird. Ich arbeitete tatsächlich an einem Altsystem mit dem obigen Code. Wie auch immer, danke für die Köpfe hoch; Ich werde in das Beispiel schauen und versuchen, damit zu arbeiten. – alDiablo