Re: Drawing complex vector shapes
Re: Drawing complex vector shapes
- Subject: Re: Drawing complex vector shapes
- From: Shawn Erickson <email@hidden>
- Date: Mon, 1 Dec 2003 15:44:12 -0800
On Dec 1, 2003, at 2:41 PM, Alex Eddy wrote:
On Dec 1, 2003, at 1:53 PM, Matt Budd wrote:
I was wondering if anyone had gone
down the route of using OpenGL for its 2D drawing effects, and if they
thought that was comparable to Cocoa/Quartz graphics (which I think
look amazing for the amount of code you have to write).
I can comment on this part, having converted my app from Quartz to
CoreGraphics to OpenGL.
For reasonably complex data sets (for example drawing 100,000 separate
antialiased blended line segments), OpenGL will be several hundred
times faster than Quartz on modest (Powerbook) hardware. The basic
primitives are also easy to use like Quartz.
The downside is that the quality of the basic GL primitives is about a
hundred times worse than Quartz. Because of the discrepancies and bugs
between the various GL hardware available, you can not depend on ANY
hardware antialiasing features, or even "required" features like line
stipple. So if you want the same quality of Quartz you will have to
expend a LOT of effort rewriting all your primitives in GL from the
ground up which is not fun at all.
After you do that, it will still be several dozen times faster than
Quartz.
Thanks for the perspective of real experience. Adding the obvious...
Factor in that Apple has stated they plan to have Quartz leverage more
hardware/OpenGL features as they become sufficient for the quality that
they desire with Quartz. This has been happening with every major
release of Mac OS X.
So what is "slow" now may not always be that way, the delta will shrink.
So it comes down to deciding if you need the extra performance now and
have the resources to implement what is needed or can you (your
customers) live with it while Apple, OpenGL folks, and GPU companies
improve things.
-Shawn
_______________________________________________
cocoa-dev mailing list | email@hidden
Help/Unsubscribe/Archives:
http://www.lists.apple.com/mailman/listinfo/cocoa-dev
Do not post admin requests to the list. They will be ignored.