How can I prevent seams from showing up on objects using lower mipmap levels?
Posted
by
Shivan Dragon
on Game Development
See other posts from Game Development
or by Shivan Dragon
Published on 2013-02-25T21:40:55Z
Indexed on
2014/08/20
10:36 UTC
Read the original article
Hit count: 305
Disclaimer: kindly right click on the images and open them separately so that they're at full size, as there are fine details which don't show up otherwise. Thank you.
I made a simple Blender model, it's a cylinder with the top cap removed:
I've exported the UVs:
Then imported them into Photoshop, and painted the inner area in yellow and the outer area in red. I made sure I cover well the UV lines:
I then save the image and load it as texture on the model in Blender. Actually, I just reload it as the image where the UVs are exported, and change the viewport view mode to textured. When I look at the mesh up-close, there's yellow everywhere, everything seems fine:
However, if I start zooming out, I start seeing red (literally and metaphorically) where the texture edges are:
And the more I zoom, the more I see it:
Same thing happends in Unity, though the effect seems less pronounced. Up close is fine and yellow:
Zoom out and you see red at the seams:
Now, obviously, for this simple example a workaround is to spread the yellow well outside the UV margins, and its fine from all distances. However this is an issue when you try making a complex texture that should tile seamlessly at the edges. In this situation I either make a few lines of pixels overlap (in which case it looks bad from upclose and ok from far away), or I leave them seamless and then I have those seams when seeing it from far away.
So my question is, is there something I'm missing, or some extra thing I must do to have my texture look seamless from all distances?
© Game Development or respective owner