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):
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();
TextureRendue est déclarer comme ceci:dans mon init j'ai ceci:
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);
voila, j'espere ne rien avoir oublié.