The germans, they do love their bread
(blender 3.6, cycles)
This time i really struggled with the material. I wanted to tick off the “one material” constraint. But my edge-by-bevel-function approach was hard to handle.
Mostly, I think, because the bevel function (the one in the shaders) only samples one normal per ray, thus the resulting mix is (after lots of math and a color-ramp) surprising.
One face is a little bit cheaty. See if you can spot it!