There are two ways GDL is related to rendering materials:
1. By inline definitions
2. By parameter assignment.
That is without considering surface definitions by GDL, depending on the used rendering engine.
But sometime this causes their own problems:
For inline definitions:
Its straight forward (somehow), but sometimes it cause their own type of problems, as not all GDL functions can tolerate inline material definitions.
For parameter assignment:
It’s quiet easy to use, but the problem arises when we are dealing with a manufacturer product that uses a specific set of textures for the specific product. If it was a handful number of products that must be used in any project then by all means project administration is not problematic, but if the project’s size or complexity is huge, and requires the use an endless number of products, then just imagine project administration in ArchiCAD with an endless number of surfaces that follow multiple criterias, and sometime they are not even used by office staff.
Material definition by rendering engine:
Well for GDL scriptor, material definition either for ArchiCAD’s rendering engine or for that of Cinerender, is detracting, and the amount of script for the latter is quiet substantial in size.
1- Create a material tab in GDL definition & editor (just like there is Parameter Script, 3D Script, … etc)
2- Create a standard parameter that makes it easy for ArchiCAD to use the adequate material definition depending on the required rendering engine.
3- Create a placeholder for texture images, so that the same GSM file will act as a storage unit for all rendering materials.
And thank you