- Home /
Procedural Texturing on Multiple Terrain Mesh
I'm building a procedural terrain system and have an issue regarding texturing. It is meant for a flight simulation game.
That system has nothing to do with the unity built-in terrain system. the terrain mesh's are generated by C#. Iterations are made to fill vertices, triangles, normals and uv's arrays to create the mesh's. I use perlin noise as heightmap.
the system works with 9 tiles ( 3 by 3 ) the user / aircraft is always in the center tile. When the aircraft is moving to another tile, that tile becomes the tile in the center and other tiles are moving to re-form the 3 by 3 shape ( with the aircraft in the center tile ).
In the current system, each tile is 24000 x 24000 units. Using proper fog settings i can hide the new terrain tiles poping at the horizon.
All of this is working great, my only problem is about the texturing: I wrote a very simple Cg shader for the terrain material. Using the multi uv mixing technique, to avoid the tiling texture effect. The shader is using 2 seamless textures, that are "mixed" in many different scales to avoid any visible tiling. I'm totaly happy with the results but here is my issue:
Every of the 9 tiles are using that same Material, and between each tiles, the texture seam is visible. I'm looking for a different approch to texture my 9 tiles in a way that we cannot see any texture seams between tiles.
Answer by Deneb · Jul 17, 2014 at 04:45 PM
okay, the solution was to modify my shader so it uses world position as UV's instead of the 2D textures uv's! :) :) :)
this answer helped: http://answers.unity3d.com/questions/148888/generative-seamless-textures-across-multiple-plane.html
my related post in the forum: http://forum.unity3d.com/threads/procedural-terrain-system-and-shader.257274/#post-1701506