Spark graphics change and disable lensing for non-fancy displays

This commit is contained in:
Simon Robertshaw 2011-10-25 09:17:11 +01:00
parent 506ab6ea0e
commit f01056ee02
2 changed files with 32 additions and 22 deletions

View File

@ -178,11 +178,13 @@ int update_SPRK(UPDATE_FUNC_ARGS) {
int graphics_SPRK(GRAPHICS_FUNC_ARGS) int graphics_SPRK(GRAPHICS_FUNC_ARGS)
{ {
*firea = 10; //*firea = 80;
*firer = *colr*0.5; //*firer = *colr*0.5;
*fireg = *colg; //*fireg = *colg;
*fireb = *colb*2; //*fireb = *colb*2;
*pixel_mode |= FIRE_ADD; *colr *= 0.5;
*pixel_mode |= PMODE_BLUR; *colb *= 2;
//*pixel_mode |= FIRE_ADD;
*pixel_mode |= PMODE_GLOW;
return 1; return 1;
} }

View File

@ -2351,21 +2351,28 @@ void render_parts(pixel *vid)
//Drawing the FBO onto the screen sounds like a cool idea now //Drawing the FBO onto the screen sounds like a cool idea now
glEnable( GL_TEXTURE_2D ); glEnable( GL_TEXTURE_2D );
glUseProgram(lensProg); if(cmode==CM_FANCY)
glActiveTexture(GL_TEXTURE0); {
glBindTexture(GL_TEXTURE_2D, partsFboTex); glUseProgram(lensProg);
glUniform1i(glGetUniformLocation(lensProg, "pTex"), 0); glActiveTexture(GL_TEXTURE0);
glActiveTexture(GL_TEXTURE1); glBindTexture(GL_TEXTURE_2D, partsFboTex);
glBindTexture(GL_TEXTURE_2D, partsTFX); glUniform1i(glGetUniformLocation(lensProg, "pTex"), 0);
glTexSubImage2D(GL_TEXTURE_2D, 0, 0, 0, XRES, YRES, GL_RED, GL_FLOAT, gravxf); glActiveTexture(GL_TEXTURE1);
glUniform1i(glGetUniformLocation(lensProg, "tfX"), 1); glBindTexture(GL_TEXTURE_2D, partsTFX);
glActiveTexture(GL_TEXTURE2); glTexSubImage2D(GL_TEXTURE_2D, 0, 0, 0, XRES, YRES, GL_RED, GL_FLOAT, gravxf);
glBindTexture(GL_TEXTURE_2D, partsTFY); glUniform1i(glGetUniformLocation(lensProg, "tfX"), 1);
glTexSubImage2D(GL_TEXTURE_2D, 0, 0, 0, XRES, YRES, GL_GREEN, GL_FLOAT, gravyf); glActiveTexture(GL_TEXTURE2);
glUniform1i(glGetUniformLocation(lensProg, "tfY"), 2); glBindTexture(GL_TEXTURE_2D, partsTFY);
glActiveTexture(GL_TEXTURE0); glTexSubImage2D(GL_TEXTURE_2D, 0, 0, 0, XRES, YRES, GL_GREEN, GL_FLOAT, gravyf);
//glUniform1f(glGetUniformLocation(lensProg, "xres"), (float)XRES); glUniform1i(glGetUniformLocation(lensProg, "tfY"), 2);
//glUniform1f(glGetUniformLocation(lensProg, "yres"), (float)YRES); glActiveTexture(GL_TEXTURE0);
//glUniform1f(glGetUniformLocation(lensProg, "xres"), (float)XRES);
//glUniform1f(glGetUniformLocation(lensProg, "yres"), (float)YRES);
}
else
{
glBindTexture(GL_TEXTURE_2D, partsFboTex);
}
glColor4f(1.0f, 1.0f, 1.0f, 1.0f); glColor4f(1.0f, 1.0f, 1.0f, 1.0f);
glBegin(GL_QUADS); glBegin(GL_QUADS);
@ -2379,7 +2386,8 @@ void render_parts(pixel *vid)
glVertex3f(XRES*sdl_scale, 0, 1.0); glVertex3f(XRES*sdl_scale, 0, 1.0);
glEnd(); glEnd();
glUseProgram(0); if(cmode==CM_FANCY)
glUseProgram(0);
glDisable( GL_TEXTURE_2D ); glDisable( GL_TEXTURE_2D );
//Reset coords/offset //Reset coords/offset