Full UV Map vs UV tile

It id my understanding that making a UV map, and then atlasing it will greatly increase render speed by reducing the number of pases required. However every UV map is more space your binary will consume, thus in order to reduce the binary size at the expense of some processing power, tiling UVs can be used. The problem with tiling UVs is that they first of all leave an ugly cut between textures, with no transition (e.g. grass texture to cliff texture without a cross fade to hide the seam where the grass meets the cliff), and to create a transition requires the addition of not only another texture, but is a pain to make.

Possible solutions include:
1 -Apply a gradient to the cliff where the bottom is grass like, then tile U. (High res solution-cannot tile V)
2 -Cut the mesh so the bottom can have a separate material with the same texture,same tiling, same map, but a transition are near the bottom of the texture. (inefficient-not recommended-like above, but can tile V-high res)
3 -Paint the entire cliff UV manually. (Low Res- time consuming for multiple cliffs.)
4 -Use another alpha test mesh to create a grass for the transition. (see penelope, alpha test is taxing on mobile platforms, especially in large quantities- time consuming)

A-The end user will not notice/ appreciate the aesthetic difference, just tile UV
B-The end user will not notice /appreciate the asthetic/stroage space difference, fully map and atlas all UVs for efficient rendering, the cost of storage is marginal(assume textures 512*512 each).

Other-have another solution post it here.

Which solution do you think is best, post your thoughts below.


Note: “Cut”

Note: Transition, post processed in photoshop to achieve desired effect.

I don’t understand what problem you’re trying to solve. While using an atlas can help with speed, it’s going to be dependent on what you’re trying to do. Do you have a level that isn’t can’t be loaded or isn’t running fast enough or is this just theoretical?

I don’t understand either. You have to UV map everything anyway, unless you’re just using solid colors.

–Eric

There are several questions being asked.

1)What method of UV mapping should be used to achieve the above:
-The cliff can be cut so a separate material can create the transition(or a single material can be used,but afterwords V(y-cordinate) could not be tiled because the transition are of the image would show up at another V position on the wall.)
-The entire cliff face could be painted, such that it uses no tiling, but this tends to render a much lower quality texturing job, because an image has to be stretched across a much larger space.
-Use the alpha test grass that surrounds the level in penelope to mask the seems.

2)Does storing multiple UV map texture take a lot of space(assume 512*512)? If so, should tiling methods be used when possible? Otherwise is it better to just map the object and not worry about it.

3)If storage costs for UV maps are marginal should texture atlasing always be used to increase render speed, even if tiling could be used?

4)Is there a better work around to this problem?

Slow rendering is not currently an issue.

1)a common way to cover seam transitions, aside from the methods you mentioned above would be to Vertex blend the transition. Here’s how it would work

step 1) have two separate textures that tile. one for grass or whatever ground cover you want, the second is your cliff face.
2) make sure there is a edge/vertices where you want the border of your transition to go to.
3) vertex paint the transition in your 3D app
4) assign those textures in Unity and use one of the vertex blend shaders available here in the forums.

2)this is a bit tricky because it depends on how you’ve built your model. As you’ve pointed out you could build the model as efficiently as possible (as few Tri’s as possible) and Unwrap the UVs then paint a specific texture for it. This could yield a lower resolution than you want, potentially. otherwise you could risk multiple texture calls if you use too many individual textures. What i’ve been trying to do is keep as much of the textures that i’ll use in a particular scene on one texture atlas that’s meant to tile and built my environment accordingly. This method lets me tile infinitely on U or V (not both) and use vertex blending to blend the seams. So far, this works well.

3)yes

4)none that i’m aware of.

So then your saying is that I should use a shader that tiles the rock and the uses a combine command to overlay the transition gradient, and I should be able to tile it as many times as I want.

yes, and it will look very crisp and high resolution.

This is kind of the same problem I have atm, I just posted about texture blending in this thread.

http://forum.unity3d.com/threads/67243-Blending-Textures-on-iPhone