2
$\begingroup$

I am still fairly new to Blender (couple months in)

Right now I'm working with a tileset that looks like this:

enter image description here

The code in Unity places these tiles procedurally and creates a world out of them. It works pretty well, but we would also ideally want to use a single texture on all of them.

The texture we have looks like this (the green tickmarks are guides for me and don't show up in the final model):

enter image description here

And here is a screenshot of the tile pieces that I have completed the UVs for. They work, and they tile correctly.

enter image description here enter image description here

The problem is that this process takes a long time. I am basically moving UV vertexes around manually in the UV editor. Is there a better way to do this? As an aside, the seams I've chosen also look like crap in Unity, which is another issue but may be related to how I'm doing this.

We're trying to accomplish a look of "grass transitioning to dirt" in one texture and tileset, with a kind of cartoony, cell-shaded look.

enter image description here

$\endgroup$
  • $\begingroup$ What method did you use to unwrap your mesh? $\endgroup$ – someonewithpc Feb 12 '15 at 18:58
  • $\begingroup$ I used the basic "UV Unwrap > Unwrap" method: i.imgur.com/Evbl8tC.png $\endgroup$ – shayl Feb 12 '15 at 19:00
  • $\begingroup$ you can use transfer UVmap to copy the uvmap from ine to others $\endgroup$ – Chebhou Feb 12 '15 at 19:01
  • $\begingroup$ @Chebhou That won't really work, though - for that, all objects "need" to have the same topology. $\endgroup$ – someonewithpc Feb 12 '15 at 19:03
  • $\begingroup$ @Chebhou/@someonewithpc I just tried that and it threw this error: imgur.com/q63HgTY I AM using a script that allows me to copy/paste my UVs, which helps a bit to speed things up, but I am hoping there is some fundamental process I'm not aware of $\endgroup$ – shayl Feb 12 '15 at 19:06
1
$\begingroup$

You may try the Data Transfer modifier, which will be released with the coming 2.74, but you can still experience it in the latest daily builds here.

  • Add a Data Transfer modifier, choose the source object you want to copy from.
  • Toggle Face Corner Data > UVs, then press Generate Data Layers button, which will generate a UV data for the new object (you cannot see it until the modifier is applied).
  • Choose a proper method from the list on the right, you can preview it in GLSL shading mode. Finally, apply the modifier to generate a solid UV layer.

Before: enter image description here

After: enter image description here

NOTE:

  1. For batch copying modifier among objects, you can enable the Copy Attributes Menu addon.
  2. Since it is not fairly stable (currently), use it with caution.
$\endgroup$
  • $\begingroup$ "'Ctrl+L '-> Modifiers" works fine for copying modifiers without having to use an Addon. The last selected object is the one from which the modifiers will be copied. $\endgroup$ – MarcClintDion Feb 13 '15 at 2:46
  • 1
    $\begingroup$ @MarcClintDion Right! thanks for reminding! But if the objects already got other different modifiers, it will not work for such case. I mean Ctrl L will overwrite the stack. $\endgroup$ – Leon Cheung Feb 13 '15 at 2:47
  • $\begingroup$ Interesting, by this I assume that you are saying that the Copy Attributes Addon will append Modifiers to the ones already there instead of replacing them? That would make it very useful. $\endgroup$ – MarcClintDion Feb 13 '15 at 2:52
  • 1
    $\begingroup$ Yes, there is a separate operator for appending. $\endgroup$ – Leon Cheung Feb 13 '15 at 3:01

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.