For what it's worth, I've done some work on faced wall tile generation. Here's one of the tilesets I made:
That's 20 different tiles (there's 9 in that large center block) and it covers every combination I wanted for the project I was working on. Angband doesn't need the 45° sloped tiles, which brings you down to 16. Lighting should be handled through some kind of postprocessing filter that tints the tiles IMO.
Probably you could get away with only rendering the faces of the walls, and using a procedural texture fill for the interiors; I've been meaning to give that a shot since it would have the added benefit of making the wall interiors less repetitive. Then you'd only need 12 images: four faces (north/east/west/south), 4 corners joining faces (northeast, northwest, southeast, southwest), and four corners that don't join faces (likewise). Probably you could get rid of the latter set of corners and bring it down to only 8 manually-created images.
Though honestly, at this point I start recommending you just use OpenGL and 3D geometries that actually do what you're trying to simulate with 2D.
That's 20 different tiles (there's 9 in that large center block) and it covers every combination I wanted for the project I was working on. Angband doesn't need the 45° sloped tiles, which brings you down to 16. Lighting should be handled through some kind of postprocessing filter that tints the tiles IMO.
Probably you could get away with only rendering the faces of the walls, and using a procedural texture fill for the interiors; I've been meaning to give that a shot since it would have the added benefit of making the wall interiors less repetitive. Then you'd only need 12 images: four faces (north/east/west/south), 4 corners joining faces (northeast, northwest, southeast, southwest), and four corners that don't join faces (likewise). Probably you could get rid of the latter set of corners and bring it down to only 8 manually-created images.
Though honestly, at this point I start recommending you just use OpenGL and 3D geometries that actually do what you're trying to simulate with 2D.
Comment