История изменений
Исправление XMs, (текущая версия) :
case '0': { glBindTexture(GL_TEXTURE_2D, IndexTexture[62]); EnableTexture(NewTextureCoordinats[0], NewVertexCoordinats[63+position], j); break; } case '1': { glBindTexture(GL_TEXTURE_2D, IndexTexture[63]); EnableTexture(NewTextureCoordinats[0], NewVertexCoordinats[63 + position], j); break; } case '2': { glBindTexture(GL_TEXTURE_2D, IndexTexture[64]); EnableTexture(NewTextureCoordinats[0], NewVertexCoordinats[63 + position], j); break; } case '3': { glBindTexture(GL_TEXTURE_2D, IndexTexture[65]); EnableTexture(NewTextureCoordinats[0], NewVertexCoordinats[63 + position], j); break; } case '4': { glBindTexture(GL_TEXTURE_2D, IndexTexture[66]); EnableTexture(NewTextureCoordinats[0], NewVertexCoordinats[63 + position], j); break; } case '5': { glBindTexture(GL_TEXTURE_2D, IndexTexture[67]); EnableTexture(NewTextureCoordinats[0], NewVertexCoordinats[63 + position], j); break; } case '6': { glBindTexture(GL_TEXTURE_2D, IndexTexture[68]); EnableTexture(NewTextureCoordinats[0], NewVertexCoordinats[63 + position], j); break; } case '7': { glBindTexture(GL_TEXTURE_2D, IndexTexture[69]); EnableTexture(NewTextureCoordinats[0], NewVertexCoordinats[63 + position], j); break; } case '8': { glBindTexture(GL_TEXTURE_2D, IndexTexture[70]); EnableTexture(NewTextureCoordinats[0], NewVertexCoordinats[63 + position], j); break; } case '9': { glBindTexture(GL_TEXTURE_2D, IndexTexture[71]); EnableTexture(NewTextureCoordinats[0], NewVertexCoordinats[63 + position], j); break; }
Жуть какая. Почему бы не сделать так?
char c = str[j];
if (0 <= j && j <= 9)
{
glBindTexture(GL_TEXTURE_2D, IndexTexture[62 + c]);
EnableTexture(NewTextureCoordinats[0], NewVertexCoordinats[63 + position], j);
}
// Остальное не смотрел, мне и этого хватило
Исходная версия XMs, :
case '0': { glBindTexture(GL_TEXTURE_2D, IndexTexture[62]); EnableTexture(NewTextureCoordinats[0], NewVertexCoordinats[63+position], j); break; } case '1': { glBindTexture(GL_TEXTURE_2D, IndexTexture[63]); EnableTexture(NewTextureCoordinats[0], NewVertexCoordinats[63 + position], j); break; } case '2': { glBindTexture(GL_TEXTURE_2D, IndexTexture[64]); EnableTexture(NewTextureCoordinats[0], NewVertexCoordinats[63 + position], j); break; } case '3': { glBindTexture(GL_TEXTURE_2D, IndexTexture[65]); EnableTexture(NewTextureCoordinats[0], NewVertexCoordinats[63 + position], j); break; } case '4': { glBindTexture(GL_TEXTURE_2D, IndexTexture[66]); EnableTexture(NewTextureCoordinats[0], NewVertexCoordinats[63 + position], j); break; } case '5': { glBindTexture(GL_TEXTURE_2D, IndexTexture[67]); EnableTexture(NewTextureCoordinats[0], NewVertexCoordinats[63 + position], j); break; } case '6': { glBindTexture(GL_TEXTURE_2D, IndexTexture[68]); EnableTexture(NewTextureCoordinats[0], NewVertexCoordinats[63 + position], j); break; } case '7': { glBindTexture(GL_TEXTURE_2D, IndexTexture[69]); EnableTexture(NewTextureCoordinats[0], NewVertexCoordinats[63 + position], j); break; } case '8': { glBindTexture(GL_TEXTURE_2D, IndexTexture[70]); EnableTexture(NewTextureCoordinats[0], NewVertexCoordinats[63 + position], j); break; } case '9': { glBindTexture(GL_TEXTURE_2D, IndexTexture[71]); EnableTexture(NewTextureCoordinats[0], NewVertexCoordinats[63 + position], j); break;
Жуть какая. Почему бы не сделать так?
char c = str[j];
if (0 <= j && j <= 9)
{
glBindTexture(GL_TEXTURE_2D, IndexTexture[62 + c]);
EnableTexture(NewTextureCoordinats[0], NewVertexCoordinats[63 + position], j);
}
// Остальное не смотрел, мне и этого хватило