Home Technical Talk

General questions about road imperfections

polycounter lvl 5
Offline / Send Message
rocketjump4d polycounter lvl 5
Hello guys :)
I'm making an old street. What's the best way to make road imperfections (cracks, oil leaks, tire marks, sewers, etc)?

I'm using Unity, but I think the same method will work in other game engines.

That's what I want




I would do it this way

Use 2 different materials for concrete (top) and tarmac (bottom). Then create 2 flat meshes for the sewers. And create a decal (or flat transparent mesh?) for cracks.




The second example is more complex. To be honest I have no idea how to make it.
May be somehow like this

Create 5 different meshes and 5 different materials
1 & 2 - two types of tarmac
3 & 5 - different pavements
4 - concrete



Use flat meshes for road marks/sewer and a decal for the dirt


Create 3 more different concrete materials and use vertex blending


That's it. And I'm totally not sure that it's the right way. May be you have any advices?
Cheers!

Replies

  • icegodofhungary
    Offline / Send Message
    icegodofhungary interpolator
    You don't have to create 3 different concrete materials in that last pic just to blend them. You can create one  material that has the damage/variation built in and just use that. Technically, you could do the sewer access as decals too. Part of learning to do this stuff is learning to be efficient with your time and resources. You're not going to get a greater result by making everything a mesh and its own material, especially if the camera isn't going to be right up to it and you're doing a larger scene like a street or alley.


    The light concrete floor is pretty damaged all over. Make a tiling texture with smaller cracks and that patchy look in it. Save the decals for the larger cracks. Then make an asphalt tiling texture. Pack your sewer grates into a decal atlas.

    You probably don't need to make them meshes. When you get your scene grayboxed out, figure out which camera angles will be your final renders. This lets you know what you will see and not see, and how close you'll be to stuff. That'll let you know what needs to be a mesh or not.



    1 - re use your asphalt material, put the paint stripes in your decal atlas.
    2 - re use your asphalt material
    3 - to a tiling paver material
    5 - another tiling paver material
    4 - instead of making this 3 materials, just do one with the variation between types of concrete build into it. Honestly you could just re-use your cracked light concrete material from before and the effect would largely be the same. The red stripe can be decal work.

    Re-use the solid sewer cover from the first shot, then have a third for the two grates in the 4 area. That's 3 grates total, white stripes, a straight red stripe, a curved red stripe, and a couple cracks in your decal sheet.

    You can also make a dirt/grime material for vertex blending. This will add the little bits of dirt and grime to add variation. It may not seem like it, but that's plenty to break up the repetition of reusing materials.


  • rocketjump4d
    Offline / Send Message
    rocketjump4d polycounter lvl 5
    Hi, icegodofhungary
    Thank you for detailed reply and sorry for the long wait.
    Is it a bad practice to use meshes instead of decals?
    I'm using Unity 2019.1 and it has poor decal system. So I'm using meshes quite lot. E.g. it's a flat mesh


  • icegodofhungary
    Offline / Send Message
    icegodofhungary interpolator
    When you said mesh I was thinking you were modeling an actual grate, not just using a mesh card over the surface. I suggested it to save time in your work flow.


  • Axi5
    Offline / Send Message
    Axi5 interpolator
    Hi, icegodofhungary
    Thank you for detailed reply and sorry for the long wait.
    Is it a bad practice to use meshes instead of decals?
    I'm using Unity 2019.1 and it has poor decal system. So I'm using meshes quite lot. E.g. it's a flat mesh


    Avoid using transparency wherever possible. Add the few extra vertices to clean up the silhouette and save on rendering performance by using an opaque material :)
Sign In or Register to comment.