# Neural block texturing example

> Source: <https://richg42.blogspot.com/2026/09/neural-block-texturing-example.html>
> Published: 2026-09-06 01:46:00+00:00

- Material: normal, roughness, albedo, AO (PavingStones070, 512×512 padded to 516×516)
- Selectors: 516×516×2, 4 + 4 bits per pixel, shared by all four maps, exact search each iteration
- Block latent: 86×86×4 (6×6 blocks), 8 bits/value, sampled bilinearly, ES-trained
- Decoder: 8→27→27→12 MLP, 1335 weights, decodes all four maps from one record - 8000 iterations, ES (256 pairs) then central finite differences, lr annealed, no backprop
- 32.27 dB weighted; normal 28.94 / roughness 35.40 / albedo 32.52 / AO 36.09 dB
- 320 bits per 6×6 block for the whole stack: 2.24 bpp per texture raw, 2.16 entropy-coded
- Selectors: 516×516×2, 4 + 4 bits per pixel, shared by all four maps, exact search each iteration
- Block latent: 86×86×4 (6×6 blocks), 8 bits/value, sampled bilinearly, ES-trained
- Decoder: 8→27→27→12 MLP, 1335 weights, decodes all four maps from one record
- 8000 iterations, ES (256 pairs) then central finite differences, lr annealed, no backprop
- 32.27 dB weighted; normal 28.94 / roughness 35.40 / albedo 32.52 / AO 36.09 dB
- 320 bits per 6×6 block for the whole stack: 2.24 bpp per texture raw, 2.16 entropy-coded

Decoded 512x512 material:
