top of page

master material

Every project has some sort of a Master Material. For this project I have created an all purpose master material

Master Material Preview

Master Material Setup

Master Material Exposed Parameters

image.png

This Master Material has been expanded upon the request of the team, every time that any team member needed a feature I would integrate it in to the main Master Material. Few things that are included inside of the MM are, full control over base colour, normal and ORM maps, with controls like brightness, contrast, saturation, colour overlay, normal strength, roughness strength, metallic strength and AO strength. Also there are UV controls where you can scale and rotate the texture, another big feature is Vertex Painting which allows to blend 4 materials based on height of each layer, procedural fish animation is also included with debug colour for animating and also custom wetness function for objects that are touching and bellow water. All of these features are locked behind custom static switch parameters which means that no feature will be enabled unless it is needed, this helps out a lot because it does not waste any performance when not needed. Which is a much better approach and more performant.

Basic Texture Controls

Basic Texture Controls

Basic Controls Function

image.png

This is my setup for basic controls over textures. I created a Material Function where I do all the math to keep the main shader graph clean. I have albedo controls for where I multiply for brightness of Albedo, Power for contrast and inverted desaturation for saturation, I also multiply a Vector 3 to add colour overlay. For normal map controls it is pretty straight forward where I use flatten normal node to control the strength of the normal map, regarding ORM Map I multiply for AO, roughness and metallic to be able to control those parameters. For Emissive there are two separate types of emissives you can turn on and off, either a flat colour or a texture you can switch between, then multiplying both emissives by a scalar would allow me to control the strength.

Master Material Graph

image.png

Vertex Painting

Height map setup for Blending

image.png

Vertex Blending

image.png

4 Layer Vertex Painting

image.png

Vertex painting provides the artist with 4 layers with all the basic and advanced controls for each layer and can be turned ON or OFF

Wetness Function

Wetness Function

image.png

One of the things requested by my team was to turn assets more wet that are in the water, I used world position to create a mask where the changes would apply and then I chose values based on real life reference of how wood or metal reacts to water.

Fish Animation Function

Fish animation Function

image.png

Fish/Shark animation required for the sea life inside of water. Because all fish have different speed and direction I decided to use WPO and World UV space to animate the fish. I created a mask based on sine waves which I then used to animate based on world position

bottom of page