Re: miniSphere 4.5.11
Reply #1700 –
I just meant that if a shader does something like:
uniform float foo = 8.12;
If the engine were to zero uninitialized uniforms (to avoid the original bug), then we introduce a new bug of the default value getting destroyed. No go.
The reason for Prim to exist is not really to show off Galileo but instead to provide v1-style immediate-mode primitives, which are generally much easier to understand for beginners. It's true that the Galileo code to support them is overcomplicated, but that's the point: modern GPUs just aren't designed to work that way (if you look at how the v1-analogue primitives are implemented in Allegro, they do the same thing the prim code does). Galileo, as originally designed by FJ, was set up to mirror the way modern graphics hardware actually works. So if you use it for what's designed to do, the resulting code makes much more sense. 
As for a Galileo-powered map engine, TurboSphere's map engine actually did just that--in fact in his case the whole map was a single Shape (I experimented with doing that internally, but large
maps ended up taking a performance hit). I would like to implement a new Galileo-powered JS map engine in miniSphere 5.0 as well. That's why I decided to do a 4.6 release, because there are a lot of useful changes on the trunk already and I still have my work cut out for me.