• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: NSWindow resizing hack?
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: NSWindow resizing hack?


  • Subject: Re: NSWindow resizing hack?
  • From: Wade Tregaskis <email@hidden>
  • Date: Sun, 8 Jun 2003 17:33:17 +1000

Anyone know why drawing on OS X is so painfully slow?

At a salty guess:

a) None of the details are hardware accelerated (e.g. you can't just tell your graphics card to draw a "button", or any other high-level interface widget). All your $300 graphics card is usually doing is copying memory around.

b) Every still frame of the resize may reallocate more memory, which may cause excessive swapping about of memory in VRAM and RAM. Alternatively, a larger space may be allocated and reused, only being reallocated when the object within it becomes too big. I'd imagine the latter method is faster in most cases, but the risk of wasting memory is probably too much for many coders to bear.

c) MacOS X's drawing system is very layered, and highly event-orientated/'threaded', compared with Win32 or Classic MacOS. Meaning, while it may have the same graphics "bandwidth", if I can use the term here as a metaphor, it tends to have higher latencies - clicking a button no longer necessarily executes the button's code immediately. Instead, an event is shuffled through the various mechanisms and layers, and then the resulting redraw shuffled through more layers of views and contexts to actually get rendered to screen. Classic MacOS users were too long spoilt by the luxuries of a co-operative multitasking system (i.e. one which can focus on one task devotedly, which is what most power users - video, graphics, audio etc - really want).

d) Crappy modern graphics cards. A trusty Rage 128 Pro still outperforms the Radeon's in the current iBooks, for example - and by a huge margin. I've also quite a body of anecdotal evidence that the same goes for the much-hyped GeForce 2 MX's (well, they were hyped when they came out). It seems the emphasis in general consumer cards is on pushing up artificial 3d performance in a few choice games, rather than focusing on having an excellent 2D engine. We can probably blame 3dfx for this, based on the timing and their obvious influence on 3d graphics.

Lastly, in response to your particular gripe - e) Ever drawn a 100 page-per-second flip book, in real time? :)

Wade Tregaskis
-- Sed quis custodiet ipsos custodes?
_______________________________________________
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.

References: 
 >NSWindow resizing hack? (From: Steve Gehrman <email@hidden>)

  • Prev by Date: Re: NSWindow resizing hack?
  • Next by Date: Re: C question for you old guys ;-)
  • Previous by thread: Re: NSWindow resizing hack?
  • Next by thread: Re: NSWindow resizing hack?
  • Index(es):
    • Date
    • Thread