Я отобразил несколько символов на атласе текстуры, фон которого полностью прозрачен (изображение атласа текстуры получило альфа-канал, формат RGBA). После этого я использую текстурный атлас для рисования всех символов, пока символы на текстуре появляются.Цвет текстуры OpenGL не отображается корректно при повороте
Проблема заключается в том, что визуализированный символ не вращается, все в порядке. Однако цвет символа кажется неправильным, когда он был повернут.
Как показано на следующем рисунке: символ левой стрелки не поворачивается и не отображается правильно. Цвет на краю правого символа, который повернут, как-то изменился.
Что может быть причиной этого?
EDIT:
Как предложил @BDL, я изменил параметр, чтобы:
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
Но некоторые из символов до сих пор не показывают, как ожидалось:
Символ треугольника справа c дый правильный.
Я также попытался:
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
Не работает.
Следует ли изменить цвет фона текстуры так же, как и цвет пикселя символов, а затем использовать GL_LINEAR в качестве опции фильтра текстуры?
проверить анти-Aliasing техника – shan
Какого цвета прозрачные пиксели в исходном изображении? Черный? Белый? – genpfault
@genpfault Black –