OpenGLとGLUTを使用して、立方体の両側に異なるテクスチャを配置する方法を見つけようとしてきました。シンプルなテクスチャにすることはできますが、複数のテクスチャにすることはできません。私は自分のコードを載せるでしょうが、それは今は醜くて雑然としています。これが非常に簡単な場合は、フォローするコードを投稿してください。ありがとう!
2789 次
1 に答える
0
そのNEHEopenGLレッスン#22 http://nehe.gamedev.net/data/lessons/lesson.asp?lesson=22次に、顔ごとに異なるテクスチャが必要な場合は、顔ごとに立方体のレンダリング部分を変更できます。切り替えることによってglClientActiveTextureARB(GL_TEXTURE0_ARB);
、またはglClientActiveTextureARB(GL_TEXTURE1_ARB);
あなたが持っているテクスチャの数に依存します。
例: `
// Back Face
glClientActiveTextureARB(GL_TEXTURE0_ARB);
glNormal3f( 0.0f, 0.0f,-1.0f);
for (i=4; i<8; i++) {
glTexCoord2f(data[5*i],data[5*i+1]);
glVertex3f(data[5*i+2],data[5*i+3],data[5*i+4]);
}
// Top Face
glClientActiveTextureARB(GL_TEXTURE1_ARB);
glNormal3f( 0.0f, 1.0f, 0.0f);
for (i=8; i<12; i++) {
glTexCoord2f(data[5*i],data[5*i+1]);
glVertex3f(data[5*i+2],data[5*i+3],data[5*i+4]);
}
`
免責事項:私はそれらのコードをテストすることはありません、それは私の記憶に基づいています、あなたはそれがglClientActiveTexture()またはglActiveTexture()であったかどうか疑わしいii'amをチェックする必要があります
于 2010-03-07T12:22:29.190 に答える