LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Combining texture coordinates for a single 3D mesh

I am looking for a way to combine 3 sets of texture coordinates (and possibly an intensity factor) onto a single mesh.

 

I have been working on correcting the lens distortion for the Oculus Rift DK2 (https://decibel.ni.com/content/docs/DOC-42762) and the correction is provided by the Oculus SDK as meshes and texture coordinates. For chromatic correction, 3 sets of texture cooridnates are provided, one for each of the red, green, and blue color components. The idea is to separate a rendered image into its color components and apply each color component onto the mesh using its corresponding texture coordinates. Additionally, a vignette factor could be applied to decrease the intensity of the texture for the vertices closer to the mesh borders to decrease the visual edging effect.

 

Problem is that I could not find a way to apply different textures using different texture coefficients onto a single mesh. Each new texture erases the previous one. I thought of creating 3 different mesh (one per color), applying the corresponding color texture on each mesh, and combining the 3 meshes in the same 3D picture control using transparency. This approach does not appear to work because transparency seems to apply only to 3D objects colors, not to 3D object with textures.

 

Let me know if anyone has an idea how to approach that problem from within LabVIEW.

Marc Dubois
0 Kudos
Message 1 of 3
(2,767 Views)

You can't.  Simple as.

 

LV 3D picture does not support multitexturing.  You'll need an OpelGL toolkit for that.  I think I remember one being around but a quick search didn't find anything interesting.

Message 2 of 3
(2,718 Views)

Thanks Intaris, that's what I figured out but it's good to have confirmation.

Marc Dubois
0 Kudos
Message 3 of 3
(2,653 Views)