Re: NSWindow backing
Re: NSWindow backing
- Subject: Re: NSWindow backing
- From: Mike Paquette <email@hidden>
- Date: Sun, 11 Dec 2005 12:34:25 -0800
On Dec 11, 2005, at 11:56 AM, Jeff LaMarche wrote:
Does anyone know the status of NSWindow backings now? The Anguish/
Yacktman/Buck book states that since 10.1, only the buffered
backing option is actually used, regardless of which option is
selected, but stated that that might change (I think the purple
book came out when 10.2 was the current OS).
The "official" documentation reads just like the old OPENSTEP doc -
it just explains the difference between buffered, retained, and non-
retained, and doesn't mention anything about the retained and non-
retained options not working or being deprecated.
Does anyone know what the current status on this is, and does it
really matter any more except (perhaps) in rare situations where
you're accessing the window's bitmap data directly? I can't notice
a difference between non-retained and buffered, but I don't know if
that's because I'm not actually getting a non-retained window, or
if it's just because modern machines are so fast and have dedicated
graphics cards and memory.
Quartz only draws to window buffers, and when used on another window
type, will force that window to have a buffer. In general, direct-
to-screen drawing from the CPU is actually SLOWER than drawing to a
buffer and then flushing (a hardware DMA operation on current
hardware). There are other niceties associated with buffered
windows, such as the ability to draw with alpha, associate alpha with
the entire window, and to work with Quartz Extreme.
The use of window types other than buffered (that is, retained or non-
retained) is discouraged. The system architecture is designed to
optimize for buffered windows.
Mike Paquette
CoreGraphics Curmudgeon-at-large and Designated Troublemaker
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Cocoa-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden