Как заменить цвет текстуры?

224
25 декабря 2017, 13:29

Имеется текстура с текстом. Сам текст белый, фон прозрачный. Как заменить цвет текста на любой?(не трогая альфа-канал).

void glUtils::DrawTexture(GLuint* tex, int w, int h, int cx, int cy){
    glEnable(GL_TEXTURE_2D);
    glEnable(GL_BLEND);
    glBindTexture(GL_TEXTURE_2D, *tex);   
    float ut = 1, v =  1;
    float wt = w, ht = h;
    glBegin(GL_QUADS);
    glTexCoord2f(0, 0), glVertex2f(cx - wt / 2, cy + ht / 2);
    glTexCoord2f(ut, 0), glVertex2f(cx + wt / 2, cy + ht / 2);
    glTexCoord2f(ut, v), glVertex2f(cx + wt / 2, cy - ht / 2);
    glTexCoord2f(0, v), glVertex2f(cx - wt / 2, cy - ht / 2);
    glEnd();
    glBindTexture(GL_TEXTURE_2D, 0);
    glDisable(GL_TEXTURE_2D);  
};

Такой вариант не работает. Текст не меняет цвета.

glColor4ub(255,0,0,255);
glUtils::DrawTexture(&tex, w, h, cx, cy);
Answer 1

Вот в чем было дело. glTexEnvi(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_MODULATE);

READ ALSO
Заполнение очереди из файла

Заполнение очереди из файла

Как заполнить стандартный контейнер очередь (queue) данными из файла с помощью стандартных алгоритмов?

278
Ошибка при инициализации vector<string>

Ошибка при инициализации vector<string>

Добрый день! Я студент технического вуза и самостоятельно пытаюсь выучить c++Что пытаюсь сделать :

254
Как изменить текст элемента управления static?

Как изменить текст элемента управления static?

Сначала получал дескриптор статика и использовал setwindowtext, но почему-то не робит

206