zaggo / Pleasant3D

http://pleasantsoftware.com/developer/pleasant3d/
Other
142 stars 27 forks source link

Offscreen buffer creation fails in Quicklook generators #13

Closed zaggo closed 10 years ago

zaggo commented 10 years ago

For some reason, the creation of OpenGL offscreen buffers fails (at least) on OS X 10.9. It used to work under 10.7 (and I guess 10.8). The problem is, that creating a pixel format (CGLChoosePixelFormat) fails in the Quicklook daemon environment, when no window server is present. The code works fine when testing the Quicklook generator with qlmanage since qlmanage seems to provide a window server when testing the generator. However, quicklookd doesn't. The problem is reproducible also with qlmanage, if the -z option is set.

zaggo commented 10 years ago

News from Apple's DTS team: This issue seems to be caused by a bug in the OpenGL implementation in Mavericks. I reported it as a bug to apple (as requested by DTS) and hope Apple will fix the issue as soon as possible (i.e. in the next minor release of OS X 10.9).

Kentzo commented 10 years ago

@zaggo was it fixed by 10.9.1 ?

zaggo commented 10 years ago

@Kentzo Unfortunately no (AFAIK). The bugreport (<rdar://15726840>) is still "open" and seems completely untouched by Apple...

zaggo commented 10 years ago

Finally got a reply to my bugreport from Apple, Fixed! (v2.6)

Kentzo commented 10 years ago

@zaggo What was in the reply?

zaggo commented 10 years ago

It was a missing argument in the CGLPixelFormatAttribute array (kCGLPFANoRecovery), which is strange, since Developer Technical Support did say it was a bug in OS X... Anyway, seems to work now...

Kentzo commented 10 years ago

@zaggo This parameters (kCGLPFANoRecovery ) is almost not documented. As far as I understand it prevents system to fall back to software renderer. But I don't understand why it affects behavior of the generator…