+ if (ent->effects & EF_ADDITIVE)
+ {
+ blendfunc1 = GL_SRC_ALPHA;
+ blendfunc2 = GL_ONE;
+ }
+ else if (ent->alpha != 1.0 || skinframe->fog != NULL)
+ {
+ blendfunc1 = GL_SRC_ALPHA;
+ blendfunc2 = GL_ONE_MINUS_SRC_ALPHA;
+ }
+ else
+ {
+ blendfunc1 = GL_ONE;
+ blendfunc2 = GL_ZERO;
+ }
+
+ colorscale = r_colorscale;
+ if (gl_combine.integer)
+ colorscale *= 0.25f;
+
+ if (!skinframe->base && !skinframe->pants && !skinframe->shirt && !skinframe->glow)
+ {
+ // untextured
+ memset(&m, 0, sizeof(m));
+ m.blendfunc1 = blendfunc1;
+ m.blendfunc2 = blendfunc2;
+ if (gl_combine.integer)
+ m.texrgbscale[0] = 4;
+ m.tex[0] = R_GetTexture(r_notexture);
+ R_Mesh_State(&m);
+
+ c_alias_polys += model->numtris;
+ for (i = 0;i < model->numverts * 2;i++)
+ varray_texcoord[0][i] = model->mdlmd2data_texcoords[i] * 8.0f;
+ aliasvert = varray_vertex;
+ aliasvertcolor = varray_color;
+ R_SetupMDLMD2Frames(ent, colorscale, colorscale, colorscale);
+ aliasvert = aliasvertbuf;
+ aliasvertcolor = aliasvertcolorbuf;
+ R_Mesh_Draw(model->numverts, model->numtris, model->mdlmd2data_indices);
+ return;
+ }
+
+