+ mstate.blendfunc1 = GL_ONE;
+ mstate.blendfunc2 = GL_ZERO;
+ }
+ colorscale = r_colorscale;
+ if (gl_combine.integer)
+ {
+ mstate.texrgbscale[0] = 4;
+ colorscale *= 0.25f;
+ }
+ mstate.tex[0] = R_GetTexture(texture);
+ R_Mesh_State(&mstate);
+ ZymoticLerpBones(ent->model->zymnum_bones, (zymbonematrix *) ent->model->zymdata_poses, ent->frameblend, ent->model->zymdata_bones);
+
+ R_Mesh_GetSpace(numverts);
+ ZymoticTransformVerts(numverts, varray_vertex3f, ent->model->zymdata_vertbonecounts, ent->model->zymdata_verts);
+ R_Mesh_CopyTexCoord2f(0, ent->model->zymdata_texcoords, ent->model->zymnum_verts);
+ ZymoticCalcNormal3f(numverts, varray_vertex3f, aliasvert_normal3f, ent->model->zymnum_shaders, ent->model->zymdata_renderlist);
+ R_LightModel(ent, numverts, varray_vertex3f, aliasvert_normal3f, varray_color4f, ifog * colorscale, ifog * colorscale, ifog * colorscale, false);
+ R_Mesh_Draw(numverts, numtriangles, elements);
+ c_alias_polys += numtriangles;
+
+ if (fog)
+ {
+ memset(&mstate, 0, sizeof(mstate));
+ mstate.blendfunc1 = GL_SRC_ALPHA;
+ mstate.blendfunc2 = GL_ONE_MINUS_SRC_ALPHA;
+ // FIXME: need alpha mask for fogging...
+ //mstate.tex[0] = R_GetTexture(texture);
+ R_Mesh_State(&mstate);
+ GL_Color(fogcolor[0] * r_colorscale, fogcolor[1] * r_colorscale, fogcolor[2] * r_colorscale, ent->alpha * fog);
+ R_Mesh_GetSpace(numverts);
+ ZymoticTransformVerts(numverts, varray_vertex3f, ent->model->zymdata_vertbonecounts, ent->model->zymdata_verts);
+ R_Mesh_Draw(numverts, numtriangles, elements);
+ c_alias_polys += numtriangles;