See what's going on with flipcode!


Submitted by , posted on 08 February 2005

Image Description, by

This is a screenshot of Image Chunks, a little utility I started about a week ago. The goal of the program is to create a general-purpose, standalone image layout tool for developers. The way it works is that you load up template images (as shown in the floating window toward the bottom right), define "chunks" of that image (using rectangles) which are added to your "palette" in the left-hand listview, and then you "paint" with those chunks. The important thing though is that what you're painting is not really to create an actual image-- but rather to create a layout.

So in my little example, you see I have a source image with a basic window template (programmer art, ahem.) I define the pieces, and can now "paint" any window size or variety I want using those pieces. When the project is saved, its only the layout that's saved-- meaning the size and placement of all those painted rectangle pieces (and of course the rectangle info for the chunks.) That data can later be turned into triangle/uv information for an in-game renderer, or whatever else the user may wish to do with it. That floating 'bottom left' piece in the picture is where the mouse cursor is currently hovering.

In addition, every chunk, and every painted rectangle has optional key/value data associated with it. So for instance a user could paint an empty rectangle and add type information, like to specify its the placement of a 'text box' region that his game engine would recognize and handle accordingly. So it can be used as a GUI resource editor of sorts.

Its not just for GUIs though. One of my goals has been to keep it very general purpose, so one could use it for anything from basic hi-res splash screens to 2D tile editing. Or anything else that may benefit from rectangle arrangement info.

The editor itself is pretty straight-forward. It has zooming, panning, grid snapping, and so on. The 2D rendering is mostly all GDI work. The list on the left is a standard ListView control that's owner-drawn.

There's still a number of fixes and features I need to add before releasing it (for free, hopefully in another week or two), such as the exporting (which will use XML), stretching of painted rectangles (to prevent wasted paint), auto-packing of small images into chunkified templates, and a few more UI tools, but its coming along. Any suggestions for improving it though would be appreciated.

Image of the Day Gallery



Copyright 1999-2008 (C) FLIPCODE.COM and/or the original content author(s). All rights reserved.
Please read our Terms, Conditions, and Privacy information.