Example #1
0
static void ssaofilter(Framebuffer *mrtfbo, Texture *noise, float t, float ballsize, float darken) {

  glMatrixMode(GL_PROJECTION);
  glPushMatrix();
  glMatrixMode(GL_MODELVIEW);
  glPushMatrix();

  gluePrepareflags(0);
  glClear(GL_COLOR_BUFFER_BIT);
  glueSet2d(GLUE_NO_DEPTH);

  glUseProgramObjectARB(shader_ssao);
    glUniform1fARB(glGetUniformLocationARB(shader_ssao, "t"), t);
    glUniform1fARB(glGetUniformLocationARB(shader_ssao, "ballsize"), ballsize);
    glUniform1fARB(glGetUniformLocationARB(shader_ssao, "darken"), darken);
    glUniform2fARB(glGetUniformLocationARB(shader_ssao, "pixel"), 1.0/(float)mrtfbo->xres, 1.0/(float)mrtfbo->yres);
	  //glueGlsl_bindtex(shader_ssao, "colortex", mrtfbo->texnum, 0, GL_TEXTURE_2D, GLUE_CLAMP|GLUE_NO_MIPMAP|GLUE_NEAREST);
	  glueGlsl_bindtex(shader_ssao, "depthtex", mrtfbo->texnum2, 0, GL_TEXTURE_2D, GLUE_CLAMP|GLUE_NO_MIPMAP|GLUE_NEAREST);
	  glueGlsl_bindtex(shader_ssao, "noise", noise->texnum, 1, GL_TEXTURE_2D, GLUE_NO_MIPMAP|GLUE_NEAREST);
	  glue2dquad();
  glUseProgramObjectARB(0);

  glMatrixMode(GL_PROJECTION);
  glPopMatrix();
  glMatrixMode(GL_MODELVIEW);
  glPopMatrix();
}
Example #2
0
static void dstrukt(Framebuffer *src, float blockpow, float sinpow, float linepow, float colorsep, float t) {

  glMatrixMode(GL_PROJECTION);
  glPushMatrix();
  glMatrixMode(GL_MODELVIEW);
  glPushMatrix();

  gluePrepareflags(0);
  glClear(GL_COLOR_BUFFER_BIT);
  glueSet2d(GLUE_NO_DEPTH);

  glUseProgramObjectARB(shader_dstrukt);
  glueGlsl_bindtex(shader_dstrukt, "t_color", src->texnum, 0, GL_TEXTURE_2D, GLUE_NO_MIPMAP|GLUE_CLAMP);
  glueGlsl_bindtex(shader_dstrukt, "t_noise", noisetex->texnum, 1, GL_TEXTURE_2D, GLUE_NO_MIPMAP|GLUE_NEAREST);
  glUniform1fARB(glGetUniformLocationARB(shader_dstrukt, "blockpow"), blockpow);
  glUniform1fARB(glGetUniformLocationARB(shader_dstrukt, "sinpow"), sinpow);
  glUniform1fARB(glGetUniformLocationARB(shader_dstrukt, "linepow"), linepow);
  glUniform1fARB(glGetUniformLocationARB(shader_dstrukt, "colorsep"), colorsep);
  glUniform1fARB(glGetUniformLocationARB(shader_dstrukt, "time"), t);  

  glue2dquad();
  glUseProgramObjectARB(0);

  glMatrixMode(GL_PROJECTION);
  glPopMatrix();
  glMatrixMode(GL_MODELVIEW);
  glPopMatrix();

}
Example #3
0
static void ssaocombinefilter(Framebuffer *src, Framebuffer *ssao) {

  glMatrixMode(GL_PROJECTION);
  glPushMatrix();
  glMatrixMode(GL_MODELVIEW);
  glPushMatrix();

  gluePrepareflags(0);
  glClear(GL_COLOR_BUFFER_BIT);
  glueSet2d(GLUE_NO_DEPTH);

  glUseProgramObjectARB(shader_ssaocombine);
  glUniform2fARB(glGetUniformLocationARB(shader_ssaocombine, "pixel"), 1.0/(float)ssao->xres, 1.0/(float)ssao->yres);
	glueGlsl_bindtex(shader_ssaocombine, "colortex", src->texnum, 0, GL_TEXTURE_2D, GLUE_CLAMP|GLUE_NO_MIPMAP);
	glueGlsl_bindtex(shader_ssaocombine, "ssaotex", ssao->texnum, 1, GL_TEXTURE_2D, GLUE_CLAMP|GLUE_NO_MIPMAP);
	glueGlsl_bindtex(shader_ssaocombine, "depthtex", src->texnum2, 2, GL_TEXTURE_2D, GLUE_CLAMP|GLUE_NO_MIPMAP|GLUE_NEAREST);
//glueGlsl_bindtex(shader_ssaocombine, "depthtex", mrtfbo->texnum2, 0, GL_TEXTURE_2D, GLUE_CLAMP|GLUE_NO_MIPMAP|GLUE_NEAREST);
	glue2dquad();
  glUseProgramObjectARB(0);



  glMatrixMode(GL_PROJECTION);
  glPopMatrix();
  glMatrixMode(GL_MODELVIEW);
  glPopMatrix();

}
Example #4
0
glue_static void glueShowalphabuffer(void) {

    glueSet2d(0);
    //glDisable(GL_TEXTURE_2D);
    glueDisabletexture();
    glColor4f(1, 1, 1, 1);

    glEnable(GL_BLEND);
    glBlendFunc(GL_DST_ALPHA, GL_ZERO);

    glue2dquad();
}
Example #5
0
void blurfilter(Framebuffer *src, Framebuffer *work, float pixel, int rad, float minus) {
  int x;

  glMatrixMode(GL_PROJECTION);
  glPushMatrix();
  glMatrixMode(GL_MODELVIEW);
  glPushMatrix();

  glueBeginrender(work);
  gluePrepareflags(0);
  glClear(GL_COLOR_BUFFER_BIT);
  glueSet2d(GLUE_NO_DEPTH);
  glueDisabletexture();

  glUseProgramObjectARB(shader_blur);
  glueGlsl_bindtex(shader_blur, "t_color", src->texnum, 0, GL_TEXTURE_2D, GLUE_CLAMP|GLUE_NO_MIPMAP);
	glUniform2fARB(glGetUniformLocationARB(shader_blur, "direction"), pixel/src->xres, 0.0);
	glUniform1iARB(glGetUniformLocationARB(shader_blur, "radius"), rad);
	glUniform1fARB(glGetUniformLocationARB(shader_blur, "minus"), minus);
  glue2dquad();
  glUseProgramObjectARB(0);
  glueEndrender();

  glClear(GL_COLOR_BUFFER_BIT);
  glueSet2d(GLUE_NO_DEPTH);

  glUseProgramObjectARB(shader_blur);
  glueGlsl_bindtex(shader_blur, "t_color", work->texnum, 0, GL_TEXTURE_2D, GLUE_CLAMP|GLUE_NO_MIPMAP);
	glUniform2fARB(glGetUniformLocationARB(shader_blur, "direction"), 0, pixel/work->yres);
  float radmultiplier=(float)work->yres/(float)src->yres;
//  glueNoticef("blur multiplier shit %5.2f", radmultiplier);
	glUniform1iARB(glGetUniformLocationARB(shader_blur, "radius"), rad*radmultiplier);
  glue2dquad();
  glUseProgramObjectARB(0);

  glMatrixMode(GL_PROJECTION);
  glPopMatrix();
  glMatrixMode(GL_MODELVIEW);
  glPopMatrix();
}
Example #6
0
glue_static void glueColoroverlay(float *col, int flags) {

    glueSet2d(flags);
    glDisable(GL_TEXTURE_2D);
    glColor4f(col[0], col[1], col[2], col[3]);

    glBegin(GL_QUADS);
    glVertex2f(-1, -1);
    glVertex2f( 1, -1);
    glVertex2f( 1,  1);
    glVertex2f(-1,  1);
    glEnd();
}
Example #7
0
glue_static void glueBackgroundcolor(float r, float g, float b, float a, int flags) {

    gluePush();
    glueSet2d(flags);
    glueDisabletexture();
    renderflags(flags);
    glColor4f(r, g, b, a);

    glBegin(GL_QUADS);
    glVertex2f(-1, -1);
    glVertex2f( 1, -1);
    glVertex2f( 1,  1);
    glVertex2f(-1,  1);
    glEnd();

    gluePop();
}
Example #8
0
glue_static void glueResetalpha(float c, int flags) {

    glueSet2d(flags);
    glDisable(GL_TEXTURE_2D);
    glDisable(GL_BLEND);
    glColor4f(1, 1, 1, c);

    glColorMask(GL_FALSE, GL_FALSE, GL_FALSE, GL_TRUE);

    glBegin(GL_QUADS);
    glVertex2f(-1, -1);
    glVertex2f( 1, -1);
    glVertex2f( 1,  1);
    glVertex2f(-1,  1);
    glEnd();
    glColorMask(GL_TRUE, GL_TRUE, GL_TRUE, GL_TRUE);
}
Example #9
0
glue_static void glueBackground(float *col, int flags) {

    gluePush();
    glueSet2d(flags);
    glueDisabletexture();

    glColor4f(col[0], col[1], col[2], col[3]);

    glBegin(GL_POLYGON);
    glVertex2f(-1,  1);
    glVertex2f( 1,  1);
    glVertex2f( 1, -1);
    glVertex2f(-1, -1);
    glEnd();

    gluePop();
}
Example #10
0
static void alphafade(Texture *src, float limit, float ramp) {

  glMatrixMode(GL_PROJECTION);
  glPushMatrix();
  glMatrixMode(GL_MODELVIEW);
  glPushMatrix();

  glueSet2d(GLUE_NO_DEPTH|GLUE_BLEND_ALPHAADD);

  glUseProgramObjectARB(shader_alphafade);
  glueGlsl_bindtex(shader_alphafade, "t_color", src->texnum, 0, GL_TEXTURE_2D, GLUE_NO_MIPMAP);
  glUniform1fARB(glGetUniformLocationARB(shader_alphafade, "limit"), limit);
  glUniform1fARB(glGetUniformLocationARB(shader_alphafade, "ramp"), ramp);
  glue2dquad();
  glUseProgramObjectARB(0);

  glMatrixMode(GL_PROJECTION);
  glPopMatrix();
  glMatrixMode(GL_MODELVIEW);
  glPopMatrix();

}