Having trouble with Genius Loci Material Node

I’m getting a null output from Material Create and Add AppearanceAssetElement Node

I am trying to create Assets (named to match material name) for each of the Materials using the Default (1) asset. I tried modifying the script in the node to for “Default (1)” instead of “Default”, nothing changed.

I use a Revit add-on that creates families of Solidworks Models and the materials created all use the same Default asset.

Hi @stephen.donahay,

The reason is that one or several of your given names are already used as appearance asset names.
Use the Collector AppearanceAssetElement node to find the existing appearance asset names.
Here is a quick test with a default Revit template :

Find the existing appearance asset names :

Create and Add AppearanceAssetElement :
I added a number to make sure the appearance asset names would be unique and changed the names afterwards.

Not working for me.

Which version of Revit do you use ?
Can you add your Revit file ?

7263 014 HPU.rfa (3.2 MB) image

Family vs project perhaps?

1 Like

You don’t have a material called Default in your family.

So the Create and Add AppearanceAssetElement node can’t find the AppearanceAsset to duplicate.
Once I’ve added a material called Default, the custom node works.

Option 2 : Without creating a new material Default (longer) :


Ok. I was thinking it was looking for an asset “Default”. Thank you.
I will have to try something else.

I got everything to work up to the last node. Null for Material Set Render Appearance Color.
Checks all Materials for “Default (1) Appearance Asset”. Creates an Appearance Asset Named after the Material Name. Sets Material Appearance Asset to the newly created asset. Now i want to match the RGB color for the asset assigned to the graphics color. Isn’t this what this node does?


You didn’t use the rigth node.
Use the Material Set Render Color node instead with the rigth color property. (ceramic_color)


1 Like

Any reason why only asset type Ceramic works and Generic doesn’t?



Because it’s generic_diffuse and it is already the value by default in the input of the Set Render color node.

Removed code block to use default and still null.

Here using Ceramic type and “ceramic_color” property it works.

Change to Generic type and remove code block to use default “generic_diffuse”. It does not work.
What am i missing here?

Here is the material asset after the program runs for Generic Schema. Looks like issues.

It works on my side with the 2 differents Set Render Color nodes in your family 7263 014 HPU.rfa.

You may need to remove the Set Render Color node and replace it with a new one or copy and paste your graph into a blank dynamo file.

You have already had several solutions and you stray from the original subject, so please start a new subject for new issues.

1 Like