This still bugs quite hard for me. I don't even need a test file.
Just opening the default scene and switching to the shader workspace in a debug build will quit with:
BLI_assert failed:…
Also, when not connecting a
Texture Coordinate
orUV Map
node, I think the implicit uvmap is still taken from the original object and not the evaluated object. But I need to investigate that…
Hm, I have some mental problems to use the modern syntax for the new function, but leave the two analogous ones directly below it in the old synatx.
Then I'd prefer to use the same (old) syntax…
Are we sure there's no place where an anonymous layer needs to be exposed to python? Probably not indeed. I'll take a look at all uses of that macro.
I'm surprised and it seems strange to give the user access to anonymous attributes. It seemed to me that this was just the specifics of the implementation of computational abstraction.
What…
Can do, but then maybe change CustomData_get_number_of_layers() as well?
Codewise it would be more logical to have CustomData_get_number_of_nonanonymous_layers() But I don't really like the 'nonanonymous' part for readability.
Since this is committed the assert
BLI_assert(material != default_material);
in the function 755│ void GPU_material_set_default(GPUMaterial *material, GPUMaterial *default_material)
…