Right now I am experimenting with procedurally generating the entire graphics in order to try an almost pseudo 3D like capabilities engine, or more precisely flexibility, but done fully in 2D. 2D engines generally can't do a lot because of the constrains of isometric tile sets and I am aiming to eliminate some of these limitations.
Some tiles can be procedurally generated and some tiles only need to be resized with some special filter to preserve edges and contrast with the background. But it is inevitable that some tiles must be hand drawn at multiple sizes. And doing isometric tiles is kind of hard. So I am experimenting with converting 2D "textures" into isometric tiles. This way you need one texture with a fixed size and maybe you can generate the isometric tiles you need by using layers and coloring.
So let's take some 2D textures. These textures are actually obtained from isometric tiles that were converted to 2D textures and now I am converting them back. The process is going to be lossy. You know what they say about a copy of a copy...
I'll take this generic pink rock pattern and apply the conversion:
The shape is correct, but it does not look that great. Using a slightly less monotone texture gives better results. From this:
We get this:
This is much better IMO. You can see that it is the same pattern.
But doing such smooth patterns tends to hide the problems. Te real challenge is having a conversion that handles very high contrast textures. The kind JPEG compression usually ruins. Let's take this simple pattern:
And convert it:
Hmmmm. Not that bad. Some ugly vertical tearing, but generally still recognizable.
Keep in mind, I am making up all of these procedural generation algorithms. Those who study such things before hand probably get a lot better results. What do you think about the entire procedural generation of graphics thing?