salut,
Je voudrais faire du render to texture. j'ai trouvé des explication en cherchant un peu partout et j'ai commencé un premier programme (qui a mon sens devais fonctionner).
Comme vous vous en doutez, ca ne marche pas et je bloc donc.
voici mon paint (sous delphi):TextureRendue est déclarer comme ceci:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 glClearColor(0.1, 0.0, 0.2, 0.0); glClear(GL_COLOR_BUFFER_BIT or GL_DEPTH_BUFFER_BIT); glLoadIdentity(); //dessine une scene dans une texture. glViewport(0, 0, 256, 256); glClear(GL_COLOR_BUFFER_BIT or GL_DEPTH_BUFFER_BIT); glLoadIdentity(); glPushMatrix(); glcolor3f(0,0.2,0.8); DessinCube;// ma scene glPopMatrix(); glBindTexture(GL_TEXTURE_2D, TextureRendue); glCopyTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, 0, 0, 256, 256, 0); //dessine un quad avec ma texture crée. glViewport(0, 0, 800, 600); glColor3f(1, 1, 1); glClearColor(0.0, 0.0, 0.0, 0.0); glClear(GL_COLOR_BUFFER_BIT or GL_DEPTH_BUFFER_BIT); glBindTexture(GL_TEXTURE_2D, TextureRendue); glBegin(GL_QUADS); glTexCoord2i(0,0);glVertex3f(-2,-2,0); glTexCoord2i(1,0);glVertex3f(-2, 2,0); glTexCoord2i(1,1);glVertex3f( 2, 2,0); glTexCoord2i(0,1);glVertex3f( 2,-2,0); glEnd();dans mon init j'ai ceci:
Code : Sélectionner tout - Visualiser dans une fenêtre à part TextureRendue:gluint;
voila, j'espere ne rien avoir oublié.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 GetMem(pData, 256*256*3); glGenTextures(1, @TextureRendue); glBindTexture(GL_TEXTURE_2D, TextureRendue); glTexEnvi(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_MODULATE); glTexImage2D(GL_TEXTURE_2D, 0, 3, 256, 256, 0, GL_RGB, GL_UNSIGNED_BYTE, pData); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); FreeMem(pData);
Partager