[#76596764] Fixes exporter parameters

Testing for a revision hash doesn't work since it's random.
It would cause an error on some blender versions and not display all exporter parameters.
Fixed by testing the feature rather than blender version.
[#76596764] Adds JSON output for blender materials

There is no reason only shadernodes would get a JSON syntax.
To harmonize the format, the materials can be set as json userdata.
This is set as an option, disabled by default (--json-materials)