If I uncomment the ‘vec3 image…’ line it errors off, it doesn’t like that $UV identifier. All, or most, of the examples on the web are using it with no problem so it appears I am missing something.
Getting the same kind of error though, looks like it is puking on that $UV identifier:
ERROR: 0:194: ‘UV’ : undeclared identifier
ERROR: 0:194: ‘texture’ : no matching overloaded function found
ERROR: 0:194: ‘CH’ : field selection requires structure, vector, or interface block on left hand side
ERROR: 0:194: ‘addAlbedoDetail’ : no matching overloaded function found
Checking your project, I think the issue isn’t in your shader code, it’s now correct. The missing coordinates error is due to how the final shader is being assembled as the sum of all the required shader chunks.
In your material you aren’t assigning any texture at all, so the relevant coordinates aren’t included in the final shader. Assign any texture (literally any at all) in your diffuse map in editor and the error will go away: