I got a really specific question for an expert.

I learned recently there is no such thing as Vector 2 in a graphic shader. Every Vector is in reality a Vector 4. Like vertex colors are not just Vector 3 (RGB) but always are a Vector 4 (RGBA).

By example UV mapping is not just a Vector 2 but is in reality a Vector4 which is technically called UVWT.

I need to hide inside my mesh value for my game developed with Unity to be used by my custom shader. I already use vertex colors RGBA to store information and would like to access this new dimension of data hidden in the UV map more specifically the WT of the UVWT.

Which is accessible with certain programs. Like in Unity amplify shader:

Amplify Shader VertexTexCoord node

My Question:

How can I access these 2 hidden dimensions (WT) on the UVWT from blender? I know no tool in blender will allow me to edit those hidden values. I plan to build a custom script to edit them but still I can't find any information on the internet on how to access these 2 hidden dimensions from UVWT.

Thanks in advance for your time.

  • 2
    $\begingroup$ Would suggest creating another UVMap and populate with WT values. $\endgroup$
    – batFINGER
    Commented Dec 16, 2020 at 15:22
  • $\begingroup$ I think you are wrong. The Blender Vector only consists out of 3 values. You can check this by adding a "UV Map", selecting it use this command bpy.context.object.active_material.node_tree.nodes.active.outputs['UV'].default_value and pressing "Tab". $\endgroup$ Commented Dec 18, 2020 at 18:34
  • $\begingroup$ Yeah, I think UVWT only works on shaders, graphic cards deal in vector4 mostly so I tought blender should have as well. But it does not. @batFINGER Suggestion should be the best one. $\endgroup$
    – 01 Studio
    Commented Feb 24, 2021 at 6:06


You must log in to answer this question.

Browse other questions tagged .