- labels: 513528 --> video
- milestone: 643173 -->
- priority: 5 --> 1
- summary: Tangent space is unuseful. --> Tangent space is restricted
The current implementation of the tangent space in Irrlicht is very limiting. It only works on static meshes which have tangents calculated.
-Tangents and Binormals currently use texcoord1 and texcoord2 while they should be mapped to Tangent0 and Binormal0, which is their correct place. This, for example, prevents Irrlicht from using more advanced shaders.
-Thus, Tangent space is incompatible with lighmapped shaders. Lightmapped shaders use Texcoord0 and Texcoord1, if Tangents map the texcoord1, the lightmap no longer works correctly. If the Tangent space also worked with lightmapped meshes, then, the current looks of the parallax mapping shader could be greatly improved
-Tangent space is also incompatible with skinned meshes. Skinned meshes should have also support for the tangent space.
In general, the tangent space should be an option of the mesh, not a characteristic mutually exclusive with the other features Irrlicht has. It should be posible to enable tangent space on any mesh, static or not, and lightmapped or not.