If I Google for "seamless tile" I can find many great answers to create a single image that will seamlessly tile with itself. GIMP even has a filter that will automatically make an image seamless in 1 click, and it works surprisingly well.

But for my game, I would like not only 1 image to tile with itself. But I would like to have different variations of that tile, so the whole texture looks less boring. I want, for example, 10 different grass textures, 10 different dirt textures. Not only should grass01 tile seamlessly with grass01. But grass01 should tile seamlessly with grass02 and dirt08.

One great example of a game that does this is Starcraft. Even the original Starcraft from 1998 has this system where they have multiple grass textures that all seamlessly tile with each other. How do they do that?

  • 2
    \$\begingroup\$ Isn't this question a duplicate of this one?: gamedev.stackexchange.com/questions/26152/… \$\endgroup\$ – MichaelHouse Aug 6 '14 at 18:48
  • \$\begingroup\$ No, I read that one before. But it's about single tiled images. I'm asking specifically about more than 1. And that one is more of a subjective artistic question of "how to make them look good". I'm asking a more technical question of "how do I actually make it work". \$\endgroup\$ – VIBrunazo Aug 6 '14 at 18:51
  • \$\begingroup\$ How to make it actually work, without concern for making it look good is very simple: Make all the edges of the tiles the same. Maybe you can be a bit more clear it exactly what you want. Since the way to do this well is a lot of hard work from artists. Or, as the other answers suggest, automatic blending. \$\endgroup\$ – MichaelHouse Aug 6 '14 at 18:52
  • \$\begingroup\$ But how to make all edges the same without leaving seams? \$\endgroup\$ – VIBrunazo Aug 6 '14 at 18:54
  • 1
    \$\begingroup\$ You should have a look at Wang tiles, metioned for example here. But I have to agree this IS a duplicate, cant imagine anyone didnt ask this before. \$\endgroup\$ – wondra Aug 6 '14 at 19:25

Basically, I think what you do is first of all create a tile for each of your terrain types that seamlessly tiles with itself. As you said there are many tutorials available on how to do this.

Once you have those tiles, you can draw variants as well as transitions between different types of terrain by modifying copies of them. The only thing you need to make sure to avoid is changing the borders of the image, since you need those to seamlessly connect to neighbouring tiles.

Of course, when you're drawing transition tiles, you may start with a tile that has half of it filled with each type of terrain and then you need to make it look good. In this process you'll often end up modifying the edges a bit anyway where the terrains meet up. However, transition tiles are quite specific cases so you only need to make sure these sides still connect seamlessly to only a handful of other tiles.

| improve this answer | |
  • 2
    \$\begingroup\$ I accepted this answer as it's very useful. But for future reference, on the comments to the question, wondra pointed to an even better solution using Wang Tiles. The advantage of Wang Tiles over the solution posted by Thorbjørn, is that Wang Tiles will have varying edges instead of repeating them. Looking it up I found this article by the devs of Path of Exile that explains how to make the textures: pathofexile.com/forum/view-thread/55091 \$\endgroup\$ – VIBrunazo Aug 7 '14 at 1:35

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.