Worklog for Jim Brown

Worklog 1

Return to Worklogs

Image Packer + smPro + ImageMaster(Posted 2004-04-24)
Everythings done down.
Docs are in place.

All three programs are available as separate downloads.
Each zip contains a set of docs.
See sig.



Image Packer & SpriteMasterPro(Posted 2004-04-18)
Image Packer
************

Lots of changes/tweaks/bug fixes to Image Packer.
I'm getting some help docs together. The docs will be accessible from Image Packer via a separate HTML view window.
There is a new 'Fit image to frames' option in the animation options. This allows the image to be scaled so that it fits in nicely with the frame ranges.

SpriteMaster Pro
****************

This has had a major work over. Much more open-ended and flexible than before. Works a shade faster as well.
A few more commands/functions thrown in such as:
GetPackedImage() - extract a 2D image from a pack 
LoadFontSet() - load/create a special text sprite 
SpriteText - set the string for a text sprite 
SpritesOverlap() - returns TRUE if 2 sprites are overlapping 
CreateSprite() - create a separate sprite 
LoadSprite() - load a separate sprite
ChangeSprite - Change a sprites image reference


The reason I call is 'Pro' is down to the big change in the way you access the sprites.

In the current SpriteMaster, you do this:
mypack=LoadSpritePack("mypack.png") 
sprite=GetPackedSprite("ball".mypack) 
PositionSprite sprite,50,40
In SpriteMasterPro you now need to do:
mypack=LoadPack("mypack.png") 
sprite.smSprite=GetPackedSprite("ball",mypack) 
PositionSprite sprite,50,40

Note: You only need to add the .smSprite when creating/loading/getting sprites.
See how 'PositionSprite' still looks the same.

The major benefit of using the type method is I can do away with lots of functions. You now have direct access to the sprite settings by looking into it's type stucture.
This gives a much cleaner approach:
mypack=LoadPack("mypack.png") 
sprite.smSprite=GetPackedSprite("ball".mypack) 
PositionSprite sprite,Rand(40),Rand(70) 
RotateSprite sprite,Rand(360) 
DebugLog sprite\x ; sprites x position 
DebugLog sprite\y ; sprites y position 
DebugLog sprite\angle ; sprites angle

Still sorting the docs. Once that's done I'll be zipping both Image Packer and SpriteMasterPro together.