Whilst trying to develop a sprite scaling routine for my 3-D maze
program, I came up with the following idea.
The program SCALING.PRG shows 7 different sprites, 3 of which scale up
when you move the mouse. These are described below:
(CTRL + C to quit the demo, by the way. Remember that! It works with
most things, particularly STOS).
1) A 32x32 sprite of a control console, as it may appear in my game.
2) The 32x32 sprite, scaled up. As you can see, it looks awful. The
stippling looks particularly bad when scaled up, and piles up into
vertical lines when scaled down.
3) The same sprite at 32x64 size, with the stippling touched up (OK,
it's actually 5 & 6 interleaved, but it's just an example). At a
larger size (more like it will be used in the game) the detail on the
sprite is OK, but...
4) The 32*64 sprite, scaled up and down, still suffers from the same
blockiness (when expanded) and lines (when compressed) as the 32x32
sprite.
5,6) These are two 32x32 sprites, but 5 has the stippled pixels
shifted to the left, and 6 has those same pixels shifted right, both
forming vertical streaks. Looks bad? Maybe, but...
7) This sprite is scaled, but when I display it I take alternate lines
for the screen from sprites 6 and 7. This means that the stippled
pixels always go left/right/left/right... on subsequent lines, so the
stipple is correct whatever the scale. Neat or what?
Jason J Railton
March '97
Back To ICTARI 45