Применение текстур только к одному объекту в opengl

Я программирую на c++ в opengl. Я должен сделать текстуру, и я сделал следующий код:

void makeCheckImage(void){
int i, j, c;

for (i = 0; i < checkImageHeight; i++) {
    for (j = 0; j < checkImageWidth; j++) {
        c = ((((i&0x8)==0)^((j&0x8))==0))*255;
        checkImage[i][j][0] = (GLubyte) c;
        checkImage[i][j][1] = (GLubyte) c;
        checkImage[i][j][2] = (GLubyte) c;
        checkImage[i][j][3] = (GLubyte) 255;
    }
}
}

void init(void){   
    glClearColor(0.0, 0.0, 0.0, 0.0);
    glShadeModel(GL_FLAT);
    glEnable(GL_DEPTH_TEST);

    makeCheckImage();
    glPixelStorei(GL_UNPACK_ALIGNMENT, 1);

    glGenTextures(1, &texName);
    glBindTexture(GL_TEXTURE_2D, texName);

    glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT);
    glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT);
    glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, 
                    GL_NEAREST);
    glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, 
                    GL_NEAREST);
    glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, checkImageWidth, 
                 checkImageHeight, 0, GL_RGBA, GL_UNSIGNED_BYTE, 
                 checkImage);
}

моя проблема в том, что этот красивый фрагмент кода (а может и нет) применяет текстуры ко всей сцене! И я просто хочу, чтобы это применялось к одному объекту... Кто-нибудь может мне помочь?


person FriedRike    schedule 25.05.2012    source источник


Ответы (1)


person    schedule
comment
работало лучше, но остальные объекты по-прежнему выглядят немного странно - person FriedRike; 25.05.2012
comment
glBindTexture(GL_TEXTURE_2D,0) было бы лучше - person lazy_banana; 25.05.2012