Grit 0.8.1

Grit 0.8.1 is out now. I've made three somewhat small changes here. First, there was some trouble with shared palettes/tiles if there was no -O or -S option. “Trouble”, as in segmentation fault. This should now be fixed.

I've also reformatted the include guards from __FOO__ to GRIT_FOO_H. GCC uses that format for internal #defines and it is very territorial about such matters. So, say, when you have elf.png, GCC gets cranky because that would hide its own __ELF__, and guess who wins out there? Again, thanks for pointing these things out, Quirky.

The last item is the addition of column-major tiling. This can be useful for horizontal scrolling games, since the data or the columns are all adjacent instead of a whole scanline apart. A second benefit of this mode is that rendering to tiles is made considerably easier (and a little bit faster too).

In case you hadn't noticed yet, I've also put the manual on-line. This shows the basic options for grit and wingrit, and now there's a description of how to use it in makefiles as well. This includes how the building the grit-demo project works. This one's quite interesting, so please check it out.


Project link.

grit and usenti updates

Git is now fully at 0.7. Or, rather, grit is at 0.7. As mentioned before, a name-change was in order and this has now taken place.

Other than that, there is little difference. Dovoto pointed to a bug in the tileset directory code which made me finally deal with the way directories were being handled. Unless told otherwise, the output goes into the current working directory. This is how it should be anyway. Non-binary changes are: updated documentation (for grit itself too) and a modified Makefile because it was out of date with the code itself (thanks Richard).

What's not been added are palette reduction and a more general tileset reducer. I have functions that can do these things (inside cldib), but applying them in the grit code base is … icky. There are so many potential problems with options here that I prefer to wait and add them later. Or maybe make separate tools for them.


I've also added the new Wingrit exporter to Usenti, which is now at v1.7.7.