Geoff the Medio wrote:eleazar wrote:geoff wrote:For zoom level 8, the highest zoom, this produces a factor of about 1.9...
According to my on screen measurements, (of RC5) this is not quite the case. Imagining that stars and halos were solid squares.
At max zoom the core is about 110x110, while halos expand to ~400x400.
I was actually using the size of the system selection indicator to generate the size of the halo, not the star core itself... So the results were bigger than described. Here's a hopefully-fixed version:
That's the relative proportion i was looking for.
Geoff the Medio wrote:eleazar wrote:Also i'm concerned about the quality of the image expansion...
I agree about this... It's even more noticable on the sidepanels with the larger star graphics. It's not something I can do anything about though... Likely tzlaine will have to make any changes. Possibly it can be worked around by using larger graphics, though...?
OK, there are ways to make things look better without replacing the subroutine that actually scales the image, and these are valid even if the scaler looked as good as Photoshop's bicubic interpolation.
* images look better when scaled by powers of 2
* images look best at full size.
(assuming the original is good)
So it would be best if the zooming increments hit all the powers of 2: 6.25%, 12.5%, 25%, 50%, 100% etc.
Let's take 8x and 1x zoom as the control points.
At 8x, we can assume the player is basking in the glory of our graphics
(since unless he has a huge screen, it's impractical to play at that size). So at 8x, let's simply use the core images at 100%, rather than ~85.9% percent as currently. It will make development more straightforward anyway. So star cores will be(considered as solid squares) 128px wide. Halos will be 256 on-screen px wide.
At 1x, details of a star blur, and much of the galaxy is in view at once. Haloes are nearly irrelevant. Cores are 16x16 px (again considered as solid squares)β 1/8th of the original image size. Halos have also shrunk to 16x16. According to my scheme they should be virtually invisible.
EDIT: It's possible i've pegged the wrong place for halos to disappear, and that it really should happen at .5x zoom. I can't really be certain without seeing it in action.
If star graphics are made according to my scheme, the game can stop rendering them at or below 1x zoom. If stars are drawn according to a different scheme, there might be a slight hitch as the halos disappear. Of course a coder must evaluate if this bit of optimization is worth doing.
Ultimately it may be worth the trouble (in improved performance and enhanced appearance) if artists could provide optimized proxy images at smaller sizes (for stars, icons, whatever), and the game would use whichever version is appropriate, or scale the nearest size. Mac os X icons use this method, and it allows greater clarity at small sizes, and greater detail at big sizes than any scaling algorithm could provide.
Image size of Halos:
It may be worthwhile to make the halo source images 256x256, i.e. at 100% while zoomed to 8x. On the other hand, since halos are inherently blurry, a better scaling subroutine should be able to acceptably enlarge them to 200%. If performance is negligibly effected, i'd go with the former.
I didn't provide any illustrations, but it was gorgeous out, and i wrote this outside without a good place to use a mouse, but i think we understand each other now. I can clarify anything that's not clear.