LX, I've just had a pretty good idea on textures+tinting- when there's a graphic tile and you want only some parts of it to receive tint (like a stone bookshelf- only the shelves should be tinted, not the books), could you try making it so that only pixels with 0 saturation (R=G=B) get tinted, while others are left unchanged?
No problem. See, the code has several 'modes' for drawing tiles based on texture, "foreground" and "background" colors:
- -1 - no tile. draws nothing apart from liquids, so underlying tiles are visible
- 0 - no blending (AS_IS)
- 1 - classic
classic is the same mode that stock GL renderers use. It is selected if the cel has "classic" colorspec of fg,bg,br. Otherwise default is 0, where color is taken from the texture. Alpha is forced to 1.0 in both cases, so that solid tiles are not transparent.
Adding a dozen new modes is quite simple.
I see no problem with items, buildings and such, which have floor defined under them and thus can be (and will be) drawn in a separate pass over the whatever floor happens to be there.
Trees, boulders and such, like drifwood have a problem - they are tiles themselves, so I have no data to draw floor under them, and if I don't force alpha to 1.0, lower levels become visible, which is ugly.
Something needs to be invented.
Another question: thinking of the avarage noob like me here- once the project is done, will you be able to include all the necessary libraries in the download so that installing any additional stuff isn't necessary? (well, except maybe for Python itself).
I tried to make a self-contained executable out of this, but failed for now. Will try later.
I made your tileset work, all stuff is in git. It expects the two png files in the '32px' subdirectory where fgtestbed runs - see proto.txt for celpagedefs.
Some bugs still there, shrubs and trees and underwater driftwood. I'm investigating those.
Also fixed a bug in the dump generator where grass material overwrote basic material on a tile, so that you ended up with StoneStairD made out of grass. Fixed dumps uploaded.