[updates] 7 for 3.1 alpha

Raab, Andreas Andreas.Raab at disney.com
Thu May 17 19:43:19 UTC 2001


Bert,

> > watch for new VMs for your favorite platform before 
> > upgrading past the bumper (or, of course, make your own
> > (and tell us if you do this for *nix ;-)).
> 
> I'll try it.
> 
> Andreas, can you put a little graphics-intensive benchmark somewhere?

Easiest way of testing it is to set the Preference>>higherPerformance to
true and go into the Squeak3D project. If the acceleration works you should
see a performance improvement from something like 20fps to 150fps (of course
your mileage may vary). Another good example is the B3DSceneExplorer - if
you make this cube really large you'll see a similar speed difference [nb,
there seems to be a clipping plane problem when the acceleration is on].

[Re: Problem with black Wonderlands]
I've had a big, bad bug in the shader engine which aliased the light flags
with the attenuation - normally this didn't cause problems *except* when
using the attenuation. I've fixed this (badly initialized constant) and all
that's needed is to regenerate the C sources and recompile the VM.

[Re: Porting the accelerator]
The easiest way to start is to look at sqWin32OpenGL[h,c] - I've written
this version sort of as a prototype for Unixy ports. Make up a client window
for GL rendering, pass the events you don't care about up to the main Squeak
window and return the associated status information. Do *not* look at the
Mac side - it is a bit weird due to the Mac not having real child windows.

Of course, the most *effective* (in terms of speed) way to go is by using a
directly accessible offscreen area (aka p-buffers). This is somewhat more
complicated since you will have to expose the parameters of the p-buffer
(watch out for glGetRenderSurfaceHandle and companions) but if the speed
difference is similar to what I'm seeing between the Mac (no p-buffers) and
Windows (DirectDrawSurfaces) then it's *absolutely* worth going that way.

Cheers,
  - Andreas





More information about the Squeak-dev mailing list