キューブ マップ テクスチャで Render to Texture コンセプトを使用しようとしていますが、描画呼び出しでテクスチャがジオメトリに適用されません。これが私のコードです
#define WIDTH 64
#define HEIGHT 64
glGenTextures(1, &id1);
glBindTexture(GL_TEXTURE_CUBE_MAP, id1);
glGenFramebuffers(1, &Fboid);
for(int i=0;i<6;i++)
{
glTexParameterf(GL_TEXTURE_CUBE_MAP, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
glTexParameterf(GL_TEXTURE_CUBE_MAP, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
glTexParameterf(GL_TEXTURE_CUBE_MAP, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE);
glTexParameterf(GL_TEXTURE_CUBE_MAP, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE);
glTexParameterf(GL_TEXTURE_CUBE_MAP, GL_TEXTURE_WRAP_R, GL_CLAMP_TO_EDGE);
glTexImage2D(types[i], 0, GL_RGBA,WIDTH, HEIGHT, 0, GL_RGBA, GL_UNSIGNED_BYTE,0);
}
glBindFramebuffer(GL_FRAMEBUFFER, Fboid);
for(int i=0;i<6;i++)
glFramebufferTexture2D(GL_DRAW_FRAMEBUFFER,GL_COLOR_ATTACHMENT0,types[i],id1,0);
draw_cube();
glBindFramebuffer(GL_FRAMEBUFFER, 0);
draw();
フレームバッファのバインドが完了しているかどうかを確認しました。また、 draw_cube() は、期待どおりにジオメトリを正しく描画します。FBO を削除して glteximage2D() にデータを提供すると、cubemap テクスチャが draw() 呼び出しでジオメトリに正しく適用されます。幅の高さは、draw_cube 呼び出しで設定されたビューポートと同じです。
上記のコードの何が問題になっていますか?