Fix combining a custom material with an augment shader
The shader path key for a custom material is the material's own key with
the augmentation's preamble and body appended to it. That key is also
emitted as the "//Shader name -" comment on the second line of both
generated shader stages, and an augment shader is never a single line,
if only because of its license header. Every line of it past the first
one therefore fell out of the comment and was compiled as stray code, so
no scene combining a CustomMaterial with RenderPass.AugmentMaterial
produced a shader that compiled.
Generate hash for the shader key in finalizeShaders and use that to
create the shader key. Also update the default material path to use the
hash instead of the preamble and body.
Add a test that renders a custom material through an augmented pass.
Pick-to: 6.12
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Change-Id: I791cf81faee58967bb767511df06c71fd031962e
Reviewed-by: Christian Strømme <christian.stromme@qt.io>