On Sat, 2008-06-14 at 13:43 +0200, Bert Freudenberg wrote: ....
The path methods are a beautifully simple and useful, but they are also a particularly bad example of Morphic programming.
Does this mean that they could be done properly in Morphic? In other words, is the problem here with Morphic, or with this particular approach?
Or maybe it's just very difficult to do properly in Morphic?
I also have a more general question: if I'm not doing fancy animations or 3D effects, are there any particular benefits or drawbacks of using Tweak? I was intrigued by some statements that Tweak has a clearer separation of model and the graphical/interactive part (View/Controller in MVC). I definitely have separate model classes, and have found Morphic a bit awkward for that reason. It does have pluggable Morphs, though.
Ross
You may notice how the entire World stops while you define a path (have a clock morph running to see this). Also it uses Sensor directly, and calls displayWorld. Both big no-nos in proper Morphic programs. The followPath method even does the actual animation in a background thread. Really Bad Things can happen if you do that.
Tweak did set out to allow this kind of programming (because it is so convenient), and it succeeded in that.
For the original question - if you want the actual cover flow effect you need a 3D renderer. You could use Croquet and OpenGL for that, but it might be overkill. The Balloon3D render should be enough for this simple type of animating.
If you can live with a pseudo-3D effect (like the carousel seen on the amazon.com frontpage) you can use simple 2D morphic animation of course. In that effect, the covers always remain parallel to the screen but only move position in a 3D circle so that they become smaller in the back and larger in the front, and of course are sorted back-to-front ...
In fact, that is so simple I couldn't resist to make an etoy version, 4 lines of code :)
Uploaded as
http://wiki.squeak.org/squeak/uploads/Carousel.pr
- Bert -
Beginners mailing list Beginners@lists.squeakfoundation.org http://lists.squeakfoundation.org/mailman/listinfo/beginners