I know that there are plugins and some of the native applications have dedicated procedural textures, however with the plunge Enscape took into Assets I feel that it isn't such a stretch to at least look into the idea:
- Have a material type called "Procedural"
- This will repeat a tiled pattern with some random variations for each tile.
- Define a tiling shape (grid, plank, brick, hex, herringbone, cell) with x,y sizes and a variation percent that would affect each differently (grid = x or y, plank = offset or y, brick = size or deviation, hex = sides or rotation, cell = seed or density)
- Define the primary direction that the pattern will run on the face of the object (which way x and y are)
- Edge padding size, material, depth and chamfer facets (0 = hard edge, 1 = 45º, ... 5= rounded)
- Edge deviation to define an amplitude, density and smoothness (0% all = straight line, 100% amplitude = width of padding size, 100% density = condensed
- Body materials to be used (list) with an option of number of random rotations against each material (rotation angles = 360º/n) and an option on if the texture should be trimmed or stretched to fit.
- The materials above would be selected from any other material available.
This could be used to make seamless and random (ie more natural) wall tiles, floor boards, cladding, walls, pathing and even to have a more random grass or gravel texture.