예전 자유 게시판

OpenGL game programming에서 다중 텍스쳐링과 싱글 텍스쳐링 질문

intel 2006-11-30 12:11

OpenGL game programming 책으로 공부하고 있습니다.

page327 에서 다중 텍스쳐링을 공부하여,,
그것을 page 307에 있는 terrain rendering에 적용 하였습니다.


산 지형은 돌 텍스쳐, 풀 텍스쳐 이렇게 2개의 텍스쳐를 적용시키고,
(0번째 텍스쳐는 돌 무늬, 1번째 텍스쳐는 풀 무늬)

물 지형은 물결 그대로 적용하려고 합니다.


그러면,, 산 지형에서는 다중텍스쳐링을 사용해야 하고,,
물 지형에서는 싱글 텍스쳐링을 해야 하는데,,,,  


여기서 문제가 있습니다. ㅠ.ㅠ

다중 텍스쳐링으로 산 지형을 텍스쳐 입히는 것은 정상적인 모습을 볼 수 있으나,,

물결 텍스쳐를 입히려고,,

glBindTexture(GL_TEXTURE_2D, waterTex->texID);//물결 텍스쳐를 선택.

glBegin(GL_QUADS);//물을 의미하는 커다란 사각형의 표면을 그린다.

    glTexCoord2f(0.0f, 0.0f);
    glVertex3f(terrain[0][0][0], waterHeight, terrain[0][0][2]);

    glTexCoord2f(10.0f, 0.0f);
    glVertex3f(terrain[MAP_X-1][0][0], waterHeight, terrain[MAP_X-1][0][2]);

    glTexCoord2f(10.0f, 10.0f);
    glVertex3f(terrain[MAP_X-1][MAP_Z-1][0], waterHeight, terrain[MAP_X-1][MAP_Z-1][2]);

    glTexCoord2f(0.0f, 10.0f);
    glVertex3f(terrain[0][MAP_Z-1][0], waterHeight, terrain[0][MAP_Z-1][2]);

glEnd();


그러나 이렇게 하면,, 예상했던 물결 무늬가 아닌,,,

다중 텍스쳐링 0번에 사용했던, 돌 무늬 텍스쳐가 적용되는 결과가 생겼습니다..ㅠ.ㅠ

다중 텍스쳐링과 싱글 텍스쳐링 모두를 사용하고 싶은데, 제가 어떻게 해야 합니까?.. ^.^


류광 2006-11-30 17:11

여러 가지 이유가 있겠지만 일단 의심이 되는 것은.... 물 텍스처를 바인딩하는 시점에서 두 번째 텍스처 단위가 활성화되어 있는 게 아닐까요? 즉 물 텍스처는 두 번째 텍스처 단위에 바인딩되었을 뿐이고, 단일 텍스처링에는 첫 번째 텍스처 단위에 여전히 바인딩되어 있는 돌 텍스처가 쓰인 것이 아닐까 합니다...