comparison libvo/vo_gl.c @ 34839:5e29e950d918

Do not needlessly modulate the texture color with the vertex color. Might give some speedup on not-so-intelligent GL implementations that also have very little compute power.
author reimar
date Sun, 20 May 2012 15:30:01 +0000
parents eba74596e6ee
children 8dd474c27a8d
comparison
equal deleted inserted replaced
34838:716f2ddf8773 34839:5e29e950d918
550 mpglDepthMask(GL_FALSE); 550 mpglDepthMask(GL_FALSE);
551 mpglDisable(GL_CULL_FACE); 551 mpglDisable(GL_CULL_FACE);
552 mpglEnable(gl_target); 552 mpglEnable(gl_target);
553 if (mpglDrawBuffer) 553 if (mpglDrawBuffer)
554 mpglDrawBuffer(vo_doublebuffering?GL_BACK:GL_FRONT); 554 mpglDrawBuffer(vo_doublebuffering?GL_BACK:GL_FRONT);
555 mpglTexEnvi(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_MODULATE); 555 mpglTexEnvi(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_REPLACE);
556 556
557 mp_msg(MSGT_VO, MSGL_V, "[gl] Creating %dx%d texture...\n", 557 mp_msg(MSGT_VO, MSGL_V, "[gl] Creating %dx%d texture...\n",
558 texture_width, texture_height); 558 texture_width, texture_height);
559 559
560 glCreateClearTex(gl_target, gl_texfmt, gl_format, gl_type, scale_type, 560 glCreateClearTex(gl_target, gl_texfmt, gl_format, gl_type, scale_type,
803 }; 803 };
804 mpglMatrixMode(GL_PROJECTION); 804 mpglMatrixMode(GL_PROJECTION);
805 mpglPushMatrix(); 805 mpglPushMatrix();
806 mpglLoadMatrixf(matrix); 806 mpglLoadMatrixf(matrix);
807 } 807 }
808 if (osd_color != 0xffffff)
809 mpglTexEnvi(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_MODULATE);
808 mpglEnable(GL_BLEND); 810 mpglEnable(GL_BLEND);
809 if (draw_eosd) { 811 if (draw_eosd) {
810 mpglBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); 812 mpglBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
811 mpglCallList(eosdDispList); 813 mpglCallList(eosdDispList);
812 } 814 }
820 mpglBlendFunc(GL_SRC_ALPHA, GL_ONE); 822 mpglBlendFunc(GL_SRC_ALPHA, GL_ONE);
821 mpglCallLists(osdtexCnt, GL_UNSIGNED_INT, osdDispList); 823 mpglCallLists(osdtexCnt, GL_UNSIGNED_INT, osdDispList);
822 } 824 }
823 // set rendering parameters back to defaults 825 // set rendering parameters back to defaults
824 mpglDisable(GL_BLEND); 826 mpglDisable(GL_BLEND);
827 if (osd_color != 0xffffff)
828 mpglTexEnvi(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_REPLACE);
825 if (!scaled_osd) 829 if (!scaled_osd)
826 mpglPopMatrix(); 830 mpglPopMatrix();
827 mpglBindTexture(gl_target, 0); 831 mpglBindTexture(gl_target, 0);
828 } 832 }
829 833