Re: Quartz blitter/hardware support?
Re: Quartz blitter/hardware support?
- Subject: Re: Quartz blitter/hardware support?
- From: Allan Odgaard <email@hidden>
- Date: Wed, 26 Jun 2002 18:31:19 +0200
On onsdag, juni 26, 2002, at 04:49 , Shawn Erickson wrote:
Still, when my window grows to more than 10% of the screen size (give
a take some pixels) then scrolling can no longer happen in real time
(that is, follow the screens refresh rate) -- even when I only do a
NSFillRect(aRect) in my drawRect method (to fill the newly visible
pixels).
[snip]
If Quartz does indeed use the blitter for these simple operations then
a) what exactly will the Extreme version provide? and b) why on earth
is Quartz so sloooow? (okay, the latter has been debated to death on
this list IIRC, but that was for drawing bezier curves etc., not just
a simple scroll function).
What system with what video adapter? What is the size of the image data?
A 733 MHz G4 with a GeForce II and 384 MB RAM.
The default size of the NSScrollView in question is 450x320 pixels (and
it's the only element in the window). But at this size it can just
manage the 60 updates pr. second (scrolling), though make it twice as
high or wide, and it starts to skip frames (I have a method which just
calls scrollToPoint 60 times pr. second).
The resolution I'm running is 1600x1024 @ 60 Hz.
I can put this sample application online if anyone is interested!
Have you used the Quartz debug tool to better understand what is
getting redrawn while scrolling? (use the flash screen updates feature).
As said, the slowness show even if my drawRect method just fill the
background. But I tried Quartz debug, and it first flash the rectangle
that gets scrolled, and then the new pixels (both flash only once) -- so
nothing wrong here...
If you want to known more about QE and/or how to optimize Quartz
drawing a few WWDC sessions covered this topic. You can get them online
at ADC (you may have to purchase them but...).
A shame that Apple doesn't give info away for free about how to make
their system run faster, cause it's badly needed! :-(
However, I'd say that it's not me/us, but rather Apple that needs
education about how to optimize a graphics system... what I do in the
example application consists of one single FillRect, everything else is
done by Cocoa...
What a shame that my 10 year old Amiga outperforms my high-end Mac in so
many aspects -- even the fastest graphical web browser for Mac OS X is
noticeable slower than what I use on my 40 MHz Amiga, both parsing,
layout, rendering and scrolling, and it *does* conform to HTML 4 and the
Amiga actually has a very Objective-C inspired run-time binding used for
the GUI system, so it's not even the flexibility of this that can excuse
the Mac...
_______________________________________________
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.