1
\$\begingroup\$

I'm using 1024 textures for smaller buildings and 2048 for larger one's. Basic workflow:

1) Unwrap in Blender

2) Smack a concrete texture on it

3) paint some dirt here and there.

Result:

enter image description here

This only works for small buildings. Here is an example from Battlefield 2, they put a small 128x128 brick texture and tiled it across the entire building and added Dirt on top of that.

enter image description here

Is there a way to do this using Unity or do I have to create my own custom shaders? (God forbid)

\$\endgroup\$

1 Answer 1

2
\$\begingroup\$

Yes, this can be done with the Unity Standard Shader.

Check the section labelled "Secondary Maps" - here you can specify an additional albedo (surface colouration) and normal (bump) texture to layer with the Main Maps above, at a different tiling frequency and offset. You can even specify a different UV set for these maps to use, if they need to wrap around your model differently than the main texture (eg. to preserve visual continuity at UV seams at a different scale)

Usually this is done at a higher tiling rate, to add detail maps that help hide texture interpolation when the camera gets very close to the surface. But you can also use a fractional tiling amount to add this larger-scale grime to break up surfaces from a distance.

\$\endgroup\$

You must log in to answer this question.

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