I would like to define a vector-valued custom attribute at each mesh vertex. I would like to define a vector direction at each vertex, and use the interpolated value across the face for anisotropic shading.

It seems I can't store the value in a vertex color, since they are [0,1] values (and are possibly represented with 0-255 values...?).

What I'm really looking for is a blender equivalent to a primvar, but it doesn't seem to exist. My current intended workaround is to store the vector in two uv maps, but that is awfully hacky.

If I'm reading this correctly, cycles supports this, but blender does not?

Are there any standard workarounds for this?


1 Answer 1


A little bit late to answer. I don't know about the older version, but in blender 3.1 you can define Custom Attributes when you go to Object Data Properties. There you can choose Domain and Data Type of your custom attribute. You can then e.g. assign these custom attributes using Python API.

Custom attribute


You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .