Mam na laptopie Karte Intel Grpahic jakas tam problem w tym, ze nie moge wymusic efektu Render To Texture na tej karcie ani Stencil Shadows, wszystko ladnie dziala na innym komputerze z karta GeForce ale juz na Intel nie dziala czemu> jak naprawic?
0
0
Nie podałeś żadnego kodu, ale tekstura do render-to-texture powinna mieć wymiary będące potęgą dwójki.
0
chocby
void __fastcall TFCOpenGL::FakeHDR(float amount)
{
glBlendEquation(GL_FUNC_ADD);
glBindTexture(GL_TEXTURE_2D,RENDER_BLUR);
glCopyTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, 0, 0, FCOpenGL->Width, FCOpenGL->Height, 0);
glPushMatrix();
//glClear(GL_COLOR_BUFFER_BIT); glClear(GL_DEPTH_BUFFER_BIT);
glColor4f(1, 1, 1, 1);
glEnable(GL_TEXTURE_2D);
glBindTexture(GL_TEXTURE_2D,RENDER_BLUR);
glPushAttrib(GL_DEPTH_TEST);
glDisable(GL_DEPTH_TEST);
glMatrixMode(GL_PROJECTION);
glPushMatrix();
glLoadIdentity();
// GetWindowRect(GetDesktopWindow, drawRect);
glOrtho(0, FCOpenGL->Width, 0, FCOpenGL->Height, -1, 1);// glOrtho(0, drawRect->right, 0, drawRect->bottom, -1, 1);
glMatrixMode(GL_MODELVIEW);
glPushMatrix();
glLoadIdentity();
glBindTexture(GL_TEXTURE_2D,RENDER_BLUR);
glDepthMask(GL_FALSE);
//draw4x3();
glEnable(GL_BLEND);
glBlendFunc(GL_DST_COLOR,GL_SRC_COLOR);
draw4x3();
glBlendEquation(GL_FUNC_ADD);
glColor3f(1,1,1);
glDisable(GL_BLEND);
// glClearColor(0,0,0,0);
// glClear(GL_COLOR_BUFFER_BIT); glClear(GL_DEPTH_BUFFER_BIT);
//
//
//
//glBindTexture(GL_TEXTURE_2D,POST_PROCESS.Texture);
//draw4x3();
glDepthMask(GL_TRUE);
glMatrixMode(GL_PROJECTION);
glPopMatrix();
glMatrixMode(GL_MODELVIEW);
glPopMatrix();
glPopAttrib(); glDisable(GL_TEXTURE_2D);
glPopMatrix();
OnResize(NULL);
}
gdzie
for(int ai=0; ai<128; ai++)
for(int aj=0; aj<128; aj++)
{
RENDER_BLURT[ai][aj][0]=1.0f;
RENDER_BLURT[ai][aj][1]=1.0f;
RENDER_BLURT[ai][aj][2]=1.0f;
// RENDER_BLURT[ai][aj][3]=1.0f;
}
glGenTextures(1,&RENDER_BLUR);
glBindTexture(GL_TEXTURE_2D,RENDER_BLUR);
glTexEnvi(GL_TEXTURE_ENV,GL_TEXTURE_ENV_MODE,GL_MODULATE);
gluBuild2DMipmaps(GL_TEXTURE_2D, GL_RGB, 128, 128, GL_RGB, GL_UNSIGNED_BYTE, RENDER_BLURT);
glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MAG_FILTER,GL_LINEAR);
glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MIN_FILTER,GL_LINEAR);