Tangent Vector Displacement inside geometry nodes?

Hello everyone, I sculpt characters but i’m really bad at math and geo-nodes in general, so i come here to ask for your help with nodes!

I have a low poly, rigged model with UVs. I sculpted the high poly in ZBrush, and exported the correct tangent VD map (with 25 as the tangent flip and switch value). It works perfectly with the VD node in the shader editor. But i need to have access to the displaced geometry, i cannot leave it to the shader tab. Problem is, the displace modifier doesn’t support tangent VD maps.

This person on this thread made a Blender build back in 2.8 just for this, but it’s long gone now!

So i basically need to build a displace modifier using geometry nodes, that supports tangent vector displacement the same way Cycles and Eevee do with the VD shader node.

I’ve managed to create a super rough, simple displacement setup that supports world space and local vector displacement (i think, i have no idea how this works, the results just seem the same as the regular modifier)

But i have no idea what “tangent” means in this context or what it’s supposed to do, so that’s why i need your help.

As a bonus, this character has UDIMs, but the image texture node in geometry nodes doesn’t support them for some reason? I’ll have to shift UVs around for each individual image, i imagine. ._.

I think you need to convert the texture from tangent space into object space… then you could use the displacement modifier…

In GN, I don’t know a simple way to do it. You’d need to extract the tangent vector from the UVmap (the tangent vector is the X direction in the UV layout)… but you can only get the coordinates. :confused:

Maybe you could use python to store the tangent vector into an attribute and then use that in GN… thought I haven’t tested this.