[lively-kernel] Quick, silly question
danhhingalls at gmail.com
Wed Apr 14 23:17:19 CEST 2010
>Is there an easy way in LK to make a morph (just something simple,
>like a rectangle) look slightly 3D, like it has a bit of depth to it?
>Like a slab of concrete, rather than a sheet of paper?
Easy - no
Sadly, there is no existing way to do this in Lively now, just by using, eg, the style panel.
If you look at how Squeak does it, it's pretty simple -- you just draw the top left borders a lighter shade of the morph's color and the bottom right borders darker to make it look raised. To make it look recessed, you do the opposite, and use shades of the owner's color.
What we did in Squeak was to allow symbols in the border fill slot, such as #raised or #recessed (can't remember), and do special logic at render time.
It would be great if someone were willing to do this -- I think that SVG supports the necessary flexibility, and I'd be willing to write the code so it works in Canvas. I think it's really worth doing -- Lively is close to being truly cool, but it needs just a bit more bling to get it over the threshold. Also border gradients make a big difference (think picture frame made of brass pipe). Obviously doing a good job of these things for polygons and curves also gets difficult. By the way, who wants to do the polyline/curve conversion that I put in Squeak?
More information about the lively-kernel