Fix lightmaps got applied to model meshes

This commit is contained in:
Magnus Norddahl 2021-10-14 06:11:54 +02:00
commit 6a804cd4c7
4 changed files with 11 additions and 7 deletions

View file

@ -46,6 +46,7 @@ FModelVertexBuffer::FModelVertexBuffer(bool needindex, bool singleframe)
{ 0, VATTR_VERTEX, VFmt_Float3, (int)myoffsetof(FModelVertex, x) },
{ 0, VATTR_TEXCOORD, VFmt_Float2, (int)myoffsetof(FModelVertex, u) },
{ 0, VATTR_NORMAL, VFmt_Packed_A2R10G10B10, (int)myoffsetof(FModelVertex, packedNormal) },
{ 0, VATTR_LIGHTMAP, VFmt_Float3, (int)myoffsetof(FModelVertex, lu) },
{ 1, VATTR_VERTEX2, VFmt_Float3, (int)myoffsetof(FModelVertex, x) },
{ 1, VATTR_NORMAL2, VFmt_Packed_A2R10G10B10, (int)myoffsetof(FModelVertex, packedNormal) }
};

View file

@ -7,6 +7,8 @@ struct FModelVertex
float x, y, z; // world position
float u, v; // texture coordinates
unsigned packedNormal; // normal vector as GL_INT_2_10_10_10_REV.
float lu, lv; // lightmap texture coordinates
float lindex; // lightmap texture index
void Set(float xx, float yy, float zz, float uu, float vv)
{
@ -15,6 +17,7 @@ struct FModelVertex
z = zz;
u = uu;
v = vv;
lindex = -1.0f;
}
void SetNormal(float nx, float ny, float nz)