[RELEASED] Improved Road Material 3 (+ dirt road and wetness on road)

Wet/Dirt road available in this version. All road textures were generated with procedural texture generator inside Unity. Custom shader is used.

In game:

In asset:


In asset store: Unity Asset Store - The Best Assets for Game Making

This road material is a high quality road material, which blends in the terrain texture. The material is based on a
custom shader, made in Shader Forge, and the road texture is made in Substance Designer.
The shader and the Substance Designer 5 project is included in this asset, so you can make your changes, if you have the necessary tools.

Configuring the road shader attributes and the Substance Designer material attributes can be time consuming.

6 shaders available:

  • shader noise based detailed (8 textures)

  • shader noise based optimal (5 textures)

  • shader noise based simple (4 textures)

  • texture noise based detailed (9 textures)

  • texture noise based optimal (6 textures)

  • texture noise based simple (5 textures)

II recommend you to use a spline asset, one that is good for road creation on terrain, so the mesh adapts the terrain and the road and rotation stays stable.

So at all, I didn’t found any good looking road solutions in the asset store, not even for my upcoming strategy game.
I had have to make my own road solution.

Enjoy the road!

Released! Unity Asset Store - The Best Assets for Game Making

Enjoy the ride on the road!

Objects turn black in android using these materials. I have added shaders in graphics settings also. Please Help.

Hi, the shader supports OpenGL ES 2.0 and 3.0. Old and new phones should be able to show the road. I will build an APK and test it on my Qualcomm 810, but it takes a bit time. I guess the procedural .sbsar materials trying to calculate the textures at starting the game and this causes the problem. You shoud use cached textures, select on the Road substances “Bake and keep substance” option in the inspector at the bottom. If it fails even then, then you have to copy the generated textures and assigne them to the material (this takes time, and it is then still a bug in Unity).

I took the scene project and built an APK. Installed it on a Qualcomm 810 with 4 GB RAM (also routed, OpenGL ES 3.0 support). It took about 1-2 min. to start the app on the phone, because all the procedural material were not cached (on pc it takes also 20-40 sec). But it runs well, no black textures. Unity 5.3.3f1, my favorite Unity version.

Maybe you could tell me more about your phone spec, and your Unity version. Do you see the black textures in a windows build? Please tell me exactly what you do, else I cannot reproduce it.

Sorry for the late reply after inbox message. Actually i got email after the personal message but not with he forum post. My Phone is Nexus 5X. 2Gb Ram. Snapdragon 808.

The forum is on the asset page, in the asset description. (https://www.assetstore.unity3d.com/en/#!/content/70923). Your phone is not the problem. Maybe you try to describe what you do, or try to just create an Android build from the scene as I did.

Remember, this asset is for experienced user, it’s not simple to make your own road type!

I’m still working on the next release. The T and X junctions will have round corner additionally, a line at the road border to better hide the road connection (this is a common way to hide the road connections) and junction decoration (+ pattern and X pattern). The I road gets also more kind of center separation lines and more separation lines (3 separation lines). Each separation line will have its own color. I’m still looking for details on real common road types, that can be added to a procedural made road.

The complexity for creating a road texture in combination with the custom road shader will rise, so I will probably provide an editor script for the next release, depends of the complexity.

It’s not an advertisement for the climate change! The next version comes also with environment effects.

1 Like

Road junctions and connections for the next release.

I guess I have now a state that I can publish. I just have to clean up my project and create a more advanced scene. Keep in mind, there are now a lot of road texture variations possible due to the Substance Designer procedural textures. That means you have a lot of attributes for changing the road. The shader was also improved, it cuts now more rounder :slight_smile: corner.

The red car and a simple car controller script will be available too.

The well known car:

Just 3 procedural textures are available. For normal road, X and T junction. L junction can be made by a spline tool with the normal road. As you can see on the pictures you can have a lot of variations, but this brings also more complexity at setting up the road.

This asset is for experienced users only!!!

On one map three different environment with environment switch script (changes light and fog). This shows that the road can be blended in different environments, that is the main purpose of this asset. Just Unity textures/grasses/trees/particle material are on the map, because of licensing issues. At all, the trees looks good, but the rest can be made much more better. The quality of the environment is not that good for this reason, but you can see somehow the road in different environments. With RTP, volume fog, lot of more props, rocks, point lights, better terrain textures and so on it would look much more better.

This all comes in the next release:

New release is under way, in Unity approval state.

The new version is available: Unity Asset Store - The Best Assets for Game Making

Enjoy the improved road!

The following screenshot is from my RTS. I just uses the Unity plain meshes with a spline line editor. You see shadows on the road and that the road color is not hostile to the terrain.

New features for the new version (dirt road, water on road):

  • Glossiness mask will be created from the normal map depth in the procedural material for water
  • The shader will have an additional texture input for for glossiness mask
  • Dirt road can be made with lot of variation (can be made already with specific settings)
  • Selecting different patterns for road, dirt, glossiness will be possible
  • The road texture can be mixed from two texture pattern for more details on the road
  • Control textures (normal map ramps) can be used over the road to offset the glossiness mask (the depth).
  • Reflection probes have impact on the shader
  • Ice will be also possible on the road.
  • Water won’t be animated on the road

You will have some control over the glossiness map, but the water will be visible in depth areas of the road, so the by wheels worn part of the road will be deeper.

Wetness strength will be fully controlled by glossiness strength:

New wetness based normal map can be added to the wetness based shader in the upcoming release. The shader will blend now between the standard normal map and wetness normal map. The wetness based normal map will be also procedural generated by the procedural material, but you have the freedom to create your own wetness normal map, if you want.

If the wetness glossiness intensity is 0, then you will not see the glare wet spots on the road.

For the next version, wet side for the road can be made: