It’s a little while I don’t publish anything about the Modular Japanese House project, I’m still working on it. Actually since my last update, I did a lot of work in order to change all materials and, in general, the approach to texturing.
When I first started this project, I used to create materials in Unreal with the Substance plug-in; this approach presented three big issues:
- the textures were looking very bad on the meshes, like everything was flat;
- the approach was really heavy because the Substance plug-in generates a texture for each channel, Unreal was complaining all the time for texture-streaming overflow;
- the materials made with Substance plug-in cannot be included in a project on the Market place.
So, I decided to move to Substance Painter and paint the textures for groups of meshes that share the same UV page, having metallic, roughness, specularity and ambient occlusion, all packed together in one mask. This approach is more convenient in term of redistribution and the result has a nicer look too, but still is not the more practical approach for easily changing and tuning the materials. Moreover, something was still looking off in my wood textures. After a little investigation, thanks to some useful feedback, I discovered that some of the substances of wood I used had an unrealistic uniform roughness. So I decided to change again.
In order to improve, first thing I did, is a little study on the wood effectively used in Japanese carpentry and furniture: which trees are used, how the wood is cut, etc. After this, I tried to find something similar to the real thing in the Substance source database and then tune those textures until they look right. In this way, I ended up with 4 types of wood for different uses. Each type of wood has three seamless square textures: base color, mask M/R/AO/S and normal. Then, I added to my shader the possibility to paint the wood with some color, tune the roughness, add some other texture on a second UV (with text for example), add some other normal, etc. In order to make the material more specific to each mesh, I also added to the shader some optional mask for edges, wear and dirt. These are small masks (typically 128×128 or 256×256), but they really improve the general look of the scene, as you can appreciate in the screenshots below. Moreover, this approach allows very quickly to add a new wood type.
Here the result: