diff --git a/src/client/refresh/gl1/gl1_lightmap.c b/src/client/refresh/gl1/gl1_lightmap.c index 6a0f069b..d64948c9 100644 --- a/src/client/refresh/gl1/gl1_lightmap.c +++ b/src/client/refresh/gl1/gl1_lightmap.c @@ -196,6 +196,12 @@ LM_BuildPolygonFromSurface(model_t *currentmodel, msurface_t *fa) t = DotProduct(vec, fa->texinfo->vecs[1]) + fa->texinfo->vecs[1][3]; t /= fa->texinfo->image->height; + if (fa->texinfo->flags & SURF_N64_UV) + { + s *= 0.5; + t *= 0.5; + } + VectorAdd(total, vec, total); VectorCopy(vec, vert->pos); vert->texCoord[0] = s; diff --git a/src/client/refresh/gl3/gl3_lightmap.c b/src/client/refresh/gl3/gl3_lightmap.c index 6e7ff445..720f2e3f 100644 --- a/src/client/refresh/gl3/gl3_lightmap.c +++ b/src/client/refresh/gl3/gl3_lightmap.c @@ -180,6 +180,12 @@ LM_BuildPolygonFromSurface(gl3model_t *currentmodel, msurface_t *fa) t = DotProduct(vec, fa->texinfo->vecs[1]) + fa->texinfo->vecs[1][3]; t /= fa->texinfo->image->height; + if (fa->texinfo->flags & SURF_N64_UV) + { + s *= 0.5; + t *= 0.5; + } + VectorAdd(total, vec, total); VectorCopy(vec, vert->pos); vert->texCoord[0] = s; diff --git a/src/client/refresh/gl4/gl4_lightmap.c b/src/client/refresh/gl4/gl4_lightmap.c index 85058e47..3d444320 100644 --- a/src/client/refresh/gl4/gl4_lightmap.c +++ b/src/client/refresh/gl4/gl4_lightmap.c @@ -180,6 +180,12 @@ LM_BuildPolygonFromSurface(gl4model_t *currentmodel, msurface_t *fa) t = DotProduct(vec, fa->texinfo->vecs[1]) + fa->texinfo->vecs[1][3]; t /= fa->texinfo->image->height; + if (fa->texinfo->flags & SURF_N64_UV) + { + s *= 0.5; + t *= 0.5; + } + VectorAdd(total, vec, total); VectorCopy(vec, vert->pos); vert->texCoord[0] = s; diff --git a/src/client/refresh/vk/vk_lightmap.c b/src/client/refresh/vk/vk_lightmap.c index 7e71c632..130c7a71 100644 --- a/src/client/refresh/vk/vk_lightmap.c +++ b/src/client/refresh/vk/vk_lightmap.c @@ -179,6 +179,12 @@ LM_BuildPolygonFromSurface(model_t *currentmodel, msurface_t *fa) t = DotProduct(vec, fa->texinfo->vecs[1]) + fa->texinfo->vecs[1][3]; t /= fa->texinfo->image->height; + if (fa->texinfo->flags & SURF_N64_UV) + { + s *= 0.5; + t *= 0.5; + } + VectorAdd(total, vec, total); VectorCopy(vec, vert->pos); vert->texCoord[0] = s;