76
Maps In Progress / (GBA) Super Mario Advance 4
« on: March 06, 2012, 12:14:01 am »
Todo: World 1 - World 2 - World 3 - World 4 - World 5 - World 6 - World 7 - World 8
Super Mario Advance 4.zip
Super Mario Advance 4.zip
This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.
[Changelog : GBA Blending Emulator]
Revision 10 30 JUN 2012 [Feature] Loading a layer no longer automatically resizes the canvas. It was pretty annoying. :D
[Fix] More positional blending bugs squashed! WHY IS IT SO HARD?!
! BUG ! There is a bug with this revision that occurs when the up/down buttons of the
positional controls of the BG layers are held down. You can still change these
values by single-clicking the buttons or entering a value manually.
Revision 9 16 MAR 2012 [Feature] Tooltips added to all controls.
[Feature] Layers now blend ~17 times faster thanks to Bitblt. (Blends 10,000,000 pixels in ~4.2 seconds)
[Feature] Now accepts images of any resolution. Still outputs at 96dpi.
[Fix] Negative positioning no longer gives incorrect results.
Revision 8 08 MAR 2012 [Feature] Now supports indexed pixel formats. (PNGOut compresses to indexed pixel formats.)
[Feature] Now uses PARGB format for all image manipulation to increase processing speed ten-fold. Save format is also PARGB.
[Feature] Loading a layer will now resize the canvas if it's too small.
[Feature] Shift-left-clicking a layer resizes the canvas to the size of the layer.
[Feature] Right-clicking a layer now removes it.
[Fix] Zoom no longer glitches the canvas.
[Fix] The Replace Tiles button now correctly disables if no replacement tiles are present.
[Internal] The Alpha and Coords windows no longer show up in the taskbar.
Revision 7 08 MAR 2012 [Feature] Added tile replacement capabilities.
[Feature] Added mouse / tile co-ordinates to the canvas.
[Feature] The canvas may now be scrolled by dragging it with the mouse.
[Feature] The canvas may now be zoomed.
[Feature] The canvas BG color may now also be chosen by Shift-clicking on the canvas.
[Fix] Fixed multiple tiling issues.
Revision 6 06 MAR 2012 [Feature] Added the ability to choose a negative position for each layer.
[Feature] Tiling is more advanced. It now loops around the canvas.
[Fix] Auto Blend will now obtain a new pointer when VBA is refreshed.
Revision 5 05 MAR 2012 [Feature] Changed the canvas to update on the fly as options are changed.
Blending now only occurs when the Blend button is pressed.
[Fix] No longer get sharing violations with open images.
[Fix] Manually setting blend options works correctly.
Revision 4 04 MAR 2012 [Feature] Changed UI controls.
[Feature] The Alpha window now resizes the image if it is too large.
[Fix] Fixed a bug causing the alpha channel to not reset.
Revision 3 04 MAR 2012 [Feature] Added support for all modes of blending.
[Feature] Added support for automatic gathering of blending information.
[Feature] Added support for layer position modifiers.
[Fix] Fixed bugs with layer tiling.
Revision 2 03 MAR 2012 [Feature] Added support for up to four layers.
[Feature] Added support for layer transparency.
[Feature] Added support for layer tiling.
Revision 1 02 MAR 2012 Internal build.
Revision 0 01 MAR 2012 Initial public release.
[Changelog : Scene Compiler]
Revision 2 16 MAR 2012 Initial public release.
Previous revisions are non-public builds.
To convert 5-bit-per-channel colour to 8-bit-per-channel colour (aka true colour) you should not multiply by 8, as that makes pure white a bit grey. You should use bit operations to repeat the value until it fills 8 bits:Code: [Select]r = (r5 << 3) | (r5 >> 2)
and repeat for g, b and a. But a lot of emulators do this wrong.
Just FYI, dealing with PNG in any higher-level language/environment like Java or .NET is pretty easy. You don't have to write any decompression code yourself to read the files. Even with lower-level languages like C there are libraries already written. Several years back I still used BMP because I used MS Paint for a lot of things, but these days there really isn't much reason to use BMP unless you're dealing with some sort of legacy software or system.