Right, my reading is that it essentially wants you to render into a CVOpenGLBuffer, which if memory serves, is not FBO based, but uses a CGLPixelBuffer Object, which requires a context switch (thus the attach) and is slower, and in the OpenGL programming guide Apple provides, specifically mentions not to use them:
Important Pixel buffers are deprecated starting with Mac OS X v10.7 and are not supported by the OpenGL 3.2 Core profile; use framebuffer objects instead. http://developer.apple.com/library/mac/#documentation/GraphicsImaging/Conceptual/OpenGL-MacProgGuide/opengl_offscreen/opengl_offscreen.html I've filed a bug / feature request for passing in a GLUint texture ID as a valid input image type. No response. Highly suggest you do the same! :) On Jun 22, 2012, at 12:31 PM, CoGe - Tamas Nagy wrote: > Yeah, I know about those things, and don't think about to pass a GLuint > texture ID (which could be awesome, anyway), but refer to that technote, it > says we should use a CVImageBuffer instead of CIImage: " > OpenGL rendering: create a CVOpenGLBufferRef with CVOpenGLBufferCreate(), > attach it to an OpenGL context with CVOpenGLBufferAttach(), perform some > OpenGL rendering in that context, then call glFlush() to terminate rendering, > and eventually pass the CVOpenGLBufferRef to the appropriate composition's > Image input and release it (see Core Video Referencefor more information on > the CVOpenGLBufferRef API). > " > > I just can't believe it can be faster then the FBO way, and I guess the MSAA > won't work also. Did not do any test to compare those methods actually, but > it seems to nobody did. > > > On Jun 22, 2012, at 6:16 PM, vade wrote: > >> Well, it would be really nice If you could pass OpenGL textures in any other >> way, would it not? >> >> Considering that you can't create a CVOpenGLTextureRef out of thin air from >> an existing GLuint texture ID, and that you might possibly be sophisticated >> enough to use your own FBO's and not want to be tied into those data >> structures (for example, wanting to leverage MSAA, etc). >> >> The problem with testing this, is that as far as I know, you can't pass in >> existing OpenGL Textures any other way. >> >> Secondly, you can no longer (since 10.6, as far as I recall) actually fetch >> CVOpenGLTextureRefs out of a QCRenderer. >> >> Fun. >> >> On Jun 21, 2012, at 4:19 AM, CoGe - Tamas Nagy wrote: >> >>> Hey, >>> >>> I just found a Technical Note >>> (https://developer.apple.com/library/mac/#technotes/tn2143/_index.html#//apple_ref/doc/uid/DTS10003731) >>> which says "Do not wrap CGImageRefs, CVImageBuffers, raw pixels data or >>> OpenGL textures into CIImages to pass them to Quartz Composer as this will >>> lead to a performance hit." >>> >>> This surprised me, because in my app actually I rendering to texture using >>> FBOs and passing them with CIImage imageFromTexture method. >>> >>> Did anybody compared the speed of the recommended way and FBO rendering >>> actually? >>> >>> Thanks, >>> >>> Tamas >>> _______________________________________________ >>> Do not post admin requests to the list. They will be ignored. >>> Quartzcomposer-dev mailing list ([email protected]) >>> Help/Unsubscribe/Update your Subscription: >>> https://lists.apple.com/mailman/options/quartzcomposer-dev/doktorp%40mac.com >>> >>> This email sent to [email protected] >> >> _______________________________________________ >> Do not post admin requests to the list. They will be ignored. >> Quartzcomposer-dev mailing list ([email protected]) >> Help/Unsubscribe/Update your Subscription: >> https://lists.apple.com/mailman/options/quartzcomposer-dev/info%40cogevj.hu >> >> This email sent to [email protected] >
_______________________________________________ Do not post admin requests to the list. They will be ignored. Quartzcomposer-dev mailing list ([email protected]) Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/quartzcomposer-dev/archive%40mail-archive.com This email sent to [email protected]

