With that application I used an NSView, but I was very new to cocoa and only did that because that is what some sample code did. A QCView in 10.4 didn't do a whole lot for you if you aren't using bindings if I remember right. NSView worked fine for use, but now looking at NSOpenGLView, it might have been a better path for us. We did have some issues with rendering it this way, that we finally decided to scrap and just do it in our Leopard release.

And yes firing a timer is exactly what I did, except we did 1/30th of a second because our Quartz file usually stayed at about 30 frames a second.

Sam McDonald
Trimonix

On Mar 13, 2008, at 8:00 PM, Lorenzo wrote:

Thank you Sam,
Your code looks promising. One question, should the renderView be a simple NSView, a QCView or an NSOpenGLView? If not a QCView, should I fire a timer each 1/60 sec in order to render with renderAtTime into the NSView or OpenGLView?


Best Regards
--
Lorenzo
email: [EMAIL PROTECTED]

From: Sam McDonald <[EMAIL PROTECTED]>
Date: Thu, 13 Mar 2008 19:23:35 -0500
To: Lorenzo <[EMAIL PROTECTED]>
Cc: cocoa-dev@lists.apple.com
Subject: Re: QCView openGLContext


I have programmed cocoa for less than a year, so if I say something stupid please bare with me. Of the programming I have done most of it has been with QC apps. From what I remember the openGLContext was added in 10.5 (and made me very excited).

In my 10.4 application I created a glcontext, set its view, and rendered to it using a QCRenderer. Here is what that looked like, please don't laugh at my ugly code, this is some of the first objective-c I wrote:

//Create OpenGL context used to render the QCRenderers and attach it to the rendering view NSOpenGLPixelFormatAttribute attributes[] = {NSOpenGLPFAAccelerated, NSOpenGLPFANoRecovery, NSOpenGLPFADoubleBuffer, NSOpenGLPFADepthSize, 24, 0};

glPixelFormat = [[NSOpenGLPixelFormat alloc] initWithAttributes:attributes]; _glContext = [[NSOpenGLContext alloc] initWithFormat:glPixelFormat shareContext:nil];
[_glContext setView:_renderView];

// Create QCRenderers from composition file
compositionPath = [bundle pathForResource:_compositionName ofType:@"qtz"]; renderer = [[QCRenderer alloc] initWithOpenGLContext:_glContext pixelFormat:glPixelFormat file:compositionPath];



This will allows you to flush your buffer, but doesn't produce nearly as nice code as what the 10.5 stuff allows you to do.

Sam McDonald
Trimonix


On Mar 13, 2008, at 6:53 PM, Lorenzo wrote:

Hi,
I build my app against 10.4 SDK. The compiler says that there are no errors. My app runs on Leopard very well. But on Tiger I get this error all the time
and my app won't launch.
--
[MYQCView openGLContext] : selector not recognized [self = 0x1492fee0]
--

If I comment this line below
    [[qcView openGLContext] flushBuffer];
my app launches and runs well, but of course I can't see the QCView contents properly. I have seen that this API is available in 10.5 and later. Anyway my compiler doesn't protest when I build my app against 10.4 SDK. This a
part, how can I make this work on Tiger too? Any workaround?


Best Regards
--
Lorenzo
email: [EMAIL PROTECTED]

_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/cocoa-dev/sammcd%40trimonix.com

This email sent to [EMAIL PROTECTED]




_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to [EMAIL PROTECTED]

Reply via email to