$patch is a useful VMT ‘shader’ for creating unified sets of materials.
The $patch ‘shader’ works by specifying an existing material, in this example “materials/glitchvid/plaster/cleanplaster_base.vmt” and allowing you to add, or replace existing parameters, in the $patch’d material. Unifying similar assets, and streamlining your material set.
Alright, let’s jump right in.
Valve added Flowmaps in the L4D2 and later versions of Source. Valve used Houdini to create theirs, but most people don’t have access or experience in Houdini to create flow maps in the fashion that Valve did.
What is a flowmap?
A flowmap is a 2d texture that, according to colour values: scrolls the water normalmap over it, creating the effect of water “flowing”, hence the name flowmap.
This guide will teach you how to author your own flowmaps for Source, I am using the Portal 2 branch, but Alien Swarm, and CS:GO will work too.
Texture repeating is because games can only use textures that can only be so big, so they have to tile: that is, imagine bathroom tile, now imagine that your carpet was made from these “tiles” and each tile was the same inch of fabric repeating, these textures are made to have as little unique identifiers as possible so its harder to see when it tiles, but its always visible one way or another; just hidden better, this is because the brain is exceptionally good at finding patterns. Examples: