Squeak logo eye

Raab, Andreas Andreas.Raab at disney.com
Mon May 7 01:54:36 UTC 2001


Karl,

I just realized that there's a really trivial little speedup (close to a
factor of two) for the Squeak logo (never really looked into it before):

FlashMorph>>fullDrawOn: aCanvas
	| myCanvas |
	aCanvas isBalloonCanvas ifTrue:[^super fullDrawOn: aCanvas].
	myCanvas _ aCanvas asBalloonCanvas.
	myCanvas deferred: true.
	super fullDrawOn: myCanvas.
	myCanvas flush.

Makes the time to draw the squeak logo on my machine drop by roughly 45%
(from 34.8 msecs per frame to 19.05 msecs per frame).

Cheers,
  - Andreas

> -----Original Message-----
> From: Raab, Andreas [mailto:Andreas.Raab at disney.com]
> Sent: Sunday, May 06, 2001 4:24 PM
> To: 'squeak at cs.uiuc.edu'
> Cc: recipient list not shown
> Subject: RE: Squeak logo eye
> 
> 
> Karl,
> 
> > I thought that if there was lots of scaling and 
> > transformation going on all the time it would take
> > more time to display.
> 
> You are right that a "lot" of scaling and transformation 
> would eat up time
> but in this particular case we've got probably like three or 
> four transforms
> which are all handled primitively and so, no, it's most 
> definitely not the
> transforms that take the time. If you're interested in 
> finding out where the
> time goes, run a message tally on the world - what you'll 
> probably see is
> that we're spending almost all time in 
> BalloonEngine>>copyLoopFaster and
> this means that there are no transforms at all involved. The 
> time is mainly
> spent in doing anti-aliasing and performing the final 
> rasterization (which
> includes dithering from 32 to 16bpp). That's nothing that is 
> affected by the
> (unscaled) size of the logo at all.
> 
> Cheers,
>   - Andreas
> 





More information about the Squeak-dev mailing list