diff --git a/code/nel/src/3d/driver/opengl3/driver_opengl.h b/code/nel/src/3d/driver/opengl3/driver_opengl.h index f1a0f96e9..5c64e3b65 100644 --- a/code/nel/src/3d/driver/opengl3/driver_opengl.h +++ b/code/nel/src/3d/driver/opengl3/driver_opengl.h @@ -436,7 +436,7 @@ public: virtual bool activeIndexBuffer(CIndexBuffer& IB); - virtual void mapTextureStageToUV(uint stage, uint uv) {} + virtual void mapTextureStageToUV(uint stage, uint uv); virtual bool renderLines(CMaterial& mat, uint32 firstIndex, uint32 nlines); virtual bool renderTriangles(CMaterial& Mat, uint32 firstIndex, uint32 ntris); diff --git a/code/nel/src/3d/driver/opengl3/driver_opengl_vertex.cpp b/code/nel/src/3d/driver/opengl3/driver_opengl_vertex.cpp index fedd5c5fa..752e14b5d 100644 --- a/code/nel/src/3d/driver/opengl3/driver_opengl_vertex.cpp +++ b/code/nel/src/3d/driver/opengl3/driver_opengl_vertex.cpp @@ -415,6 +415,21 @@ void CDriverGL3::setupGlArrays(CVertexBufferInfo &vb) } } +// *************************************************************************** +void CDriverGL3::mapTextureStageToUV(uint stage, uint uvId) +{ + H_AUTO_OGL(CDriverGL3_mapTextureStageToUV) + + // Just call it for last VertexBuffer setuped... (hack) + CVertexBufferInfo &VB = _LastVB; + if (VB.VertexFormat & (CVertexBuffer::TexCoord0Flag<