We value your input!
Please participate in Archicad 28 Home Screen and Tooltips/Quick Tutorials survey

Modeling
About Archicad's design tools, element connections, modeling concepts, etc.

Create many materials at once ??

Anonymous
Not applicable
I'm about to create many materials. All of them have different textures and also the color in 2d. Else they are equal.
Are there some way to make this more automatically? It's awfully much work to make it in the regular way.
I thought maybe the AttributeManager has some possibility to do this. But, when I look at the material definitions and compare two of them, I see the parameters have different values. So my idea to make an input-file that way is impossible.
So help is appreciated 🙂
5 REPLIES 5
Anonymous
Not applicable
Anne Helene,
For this situation, Special Menu can be a good help.

From a 3D view, with Special Menu save as "Materials.gdl" (or something like that).
Keep just the material definitions you need.

If your changes are cosmetic, from what I understand,
just duplicate material definitions under a new name,
and do the changes about RVB values and texture definition.
It should be much easy.

Refer to GDL Reference Guide (Help Menu) about material definitions, it is not complicated.

Be aware that if you add this file under "Master_GDL_my materials.gdl" into your library,
The process will be automatical, and all material definitions will show in Attribute Manager.
You will not be able to remove them.

Better to add material definitions into each object.
This way, you will not polluate the file of the end user, with unexpected materials.
Anonymous
Not applicable
Thank you, Olivier!

This was exactly ehat I asked for. I'm about to test it out.
Suddenly my Special Menu has disappeared.
I must see if the Registry has changed.
Anonymous
Not applicable
Now I only have one question left regarding this matter.
The dimensions of the texture in the Internal engine ( Attachment), how do I set it in the master_GDL_mymaterials.gdl file?

Extract from master_GDL_mymaterials.gdl:
DIM tmp_LWA_COGSMASKEDIMAGE_BASECOLOR[3]
tmp_LWA_COGSMASKEDIMAGE_BASECOLOR[1] = 0
tmp_LWA_COGSMASKEDIMAGE_BASECOLOR[2] = 0
tmp_LWA_COGSMASKEDIMAGE_BASECOLOR[3] = 0
DIM tmp_LWA_RFPLASTIC_SPECULARCOLOR[3]
tmp_LWA_RFPLASTIC_SPECULARCOLOR[1] = 0.6980392336845
tmp_LWA_RFPLASTIC_SPECULARCOLOR[2] = 0.6980392336845
tmp_LWA_RFPLASTIC_SPECULARCOLOR[3] = 0.6980392336845
define texture "Texture142" "Ikarus01", 1, 1, 512, 0

define material "PKSIkarus01" 20,
0, 0, 0,
0.73, 0.8, 0.06, 0, 0.64, 0,
0.921569, 0.827451, 0.972549,
0, 0, 0,
0, ind(fill, "Background"), -1,
ind(texture, "Texture142") ADDITIONAL_DATA LWA_COLOR = "LWA_COGSMASKEDIMAGE",
LWA_COGSMASKEDIMAGE_BASECOLOR = tmp_LWA_COGSMASKEDIMAGE_BASECOLOR,
LWA_COGSMASKEDIMAGE_FILE = "Ikarus01", LWA_COGSMASKEDIMAGE_SCALE = 0.3000000119209,
LWA_COGSMASKEDIMAGE_ASPRATIO = 1, LWA_REFLECTANCE = "LWA_RFMATTE",
LWA_RFMATTE_AMBIENT = 0.7300000190735, LWA_RFMATTE_DIFFUSE = 0.8000000119209,
LWA_TRANSPARENCY = "LWA_TRNONE", LWA_TEXTURESPACE = "LWA_TSGSREPLICATE",
LWA_TSGSREPLICATE_SREFLECT = 0, LWA_TSGSREPLICATE_TREFLECT = 0,
LWA_TSGSREPLICATE_SSIZE = 0.03500000014901, LWA_TSGSREPLICATE_TSIZE = 0.03500000014901,
LWA_TSGSREPLICATE_ANGLE = 0, LWA_PIPELINE = "LWA_PLNONE",
LWA_DISPLACEMENT = "LWA_DPWBUMPMAP", LWA_DPWBUMPMAP_FILE = "Ikarus801",
LWA_DPWBUMPMAP_WIDTH = 0.03500000014901, LWA_DPWBUMPMAP_HEIGHT = 0.03500000014901,
LWA_DPWBUMPMAP_AMPLITUDE = 0.1000000014901, LWA_DPWBUMPMAP_SOFTNESS = 1,
LWA_DPWBUMPMAP_SCALE = 1, LWA_DPWBUMPMAP_ASPRATIO = 1
Mat1.jpg
Anonymous
Not applicable
Preview image of the texture has no effect. Just consider the size of original texture. Avoid big textures if possible.
You can resize it with x, y dimensions (keep current proportions). Save as a new Master_gdl.gdl file, and AC will update the texture definition.

The main interest of a Master_gdl.gdl file, is that you can work on several definitions at once.
All materials will show in attribute manager. The coons is that you can not delete them.

Add the Master_gdl.gdl file to your libraries. Reload them. Open the Master_gdl.gdl file.
Do the cosmetic changes you need there. Duplicate what you want under a new name.
Reload your libraries for checking.

When OK, remove the Master_gdl.gdl file. Keep just the textures folder.
Copy the exact definitions (including texture) into the master script of your object.
If you want several materials for a single object, create a list of values.
values "matList" "PKSIkarus01", "PKSIkarus02"
mat = ind (material, matList)
Anonymous
Not applicable
I had forgot that this dimensions didn't have any effect.
So then I don't need to care about them.

Now I know the whole process to make new materials that I use in my objects, in an effective way.

So thank you very much, Olivier 🙂