Saturday, January 17, 2009

RetroEdit.

I've not been doing much past few days/weeks. With the flu over Christmas and now a cold I've not really been in the mood. However, I've decided to make an effort and have started back on RetroEdit.

I've finished the refactoring of it an am now happy with its layout and internal code construction. Basically, the old control I was writing delt with retro graphics in an abstracted way, and so you had to do some work to use it, now however the control deals directly with the raw format which means all you need to do is copy actual retro graphics data into the control and your all set.

So with this done, I've started to plow ahead with some features. Actual editing is obviously first, and I can now draw pixels with the mouse in both hires and multi colour modes. This is also true for C64 and spectrum editing. I've also put in sprite rotate left and right, and am about to do up/down.

Once I've done this I'll add colour picking. Currently I have 2 default colours and you can't change them - this obviously has to change to be of any use, and as its a biggie, I'll do that next.

I'm sure I listed these before, but it must have been ages ago so here it is again; the feature list I want in for version 1.


  • Paint with colour 1 (left mouse)
  • Paint with colour 2 (right mouse)
  • +/- to change frames
  • rotate frame (up,down,left,right)
  • rotate line
  • rotate column
  • Colour selection,
  • Colour Changing,
  • Copy frame
  • Insert frame
  • delete frame
  • Colour Swap
  • Copy
  • Paste (+background)
  • Brush paste (like a sprite)
  • Mirror (+around selection only)
  • Flip (+around selection only)
  • Save project
  • Save data (native format)
  • Load Project
  • Load data (native format)

    If theres anything else that you think is a must have, then let me know. I've no idea how long this will take me, but the sooner the better. Currently it lets you edit Plus4, C64 and Spectrum sprites although I still have to put real support for the C64 sprites.
  • 4 comments:

    gb said...

    Why not just create converter from common formates like bmp, png and gif?

    Anyway about the ideas i guess shifting images like this may come in handy

    Mike said...

    Drawing in MCM on a modern paint package is a nightmare, and doing animations etc. and saving them out are just as bad. I did this kind of thing during Blood Money, but it was a pain. Its far better to using a program that understands the correct formats.

    Thats already in... thats the rotate image bit.

    Vladimir Janković said...

    Overlay please :)

    C64 monochrome over multicolor one.... :)

    And keyboard controled cursor :)

    Mike said...

    I do plan to do onion skining at some point (thats where you see previous/next frames faintly in the background), but I wasn't planing it for the initial release - but I'll see how it goes.

    As for hires overlays... well I did used to allow each sprite to be hires or multicolour, but it was a pain in the ass to use. If you selected a different machine (like spectrum) you lost all that info and it was a nightmare to go through and restore it - or even view it.

    I decided that its much easier to simply flick editing in/out of MCM or HIRES as a program setting, rather than a sprite one. This means when doing hires+MCM sprites the onion skining would display the previous sprite in the current editing mode. However, since your only really interested in blocky/nonblocky pixels, you could make a solid version of the MCM (a mask if you like) and that would let you see where you drawing hires pixels over.

    Thats probably the best you can do.
    Adding an animation step might be good though. So it animates in steps of 2 allowing you to see overlaid animations properly.



    Oh... and I have tried to get cursor key control, but those keys don't appear to be coming through in C#.... I'll keep looking though.