4
\$\begingroup\$

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?

\$\endgroup\$
10
  • 2
    \$\begingroup\$ Isn't this question a duplicate of this one?: gamedev.stackexchange.com/questions/26152/… \$\endgroup\$
    – House
    Commented Aug 6, 2014 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
    Commented Aug 6, 2014 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\$
    – House
    Commented Aug 6, 2014 at 18:52
  • \$\begingroup\$ But how to make all edges the same without leaving seams? \$\endgroup\$
    – VIBrunazo
    Commented Aug 6, 2014 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
    Commented Aug 6, 2014 at 19:25

1 Answer 1

6
\$\begingroup\$

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.

\$\endgroup\$
1
  • 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
    Commented Aug 7, 2014 at 1:35

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .