It's not that the compiler doesn't find setShaderParam, it's that it expects a
Variant!
This is what I get:
Error: type mismatch: got <ShaderMaterial, string, ImageTexture>
but expected one of:
proc setShaderParam(self: ShaderMaterial; param: string; value: Variant)
first type mismatch at position: 3
required type: Variant
but expression 'texture' is of type: ImageTexture
proc setShaderParam(self: ShaderMaterial; param: string; value: Variant)
first type mismatch at position: 1
required type: ShaderMaterial
but expression 'mat' is of type: ShaderMaterial
Run