2008-11-07 16 views
1

Я пытаюсь использовать Текстурированные шрифты так, чтобы я мог отображать текст в моей сцене openGL. Однако мне трудно найти значения glBlendFunc, которые будут работать.BlendFunc для текстурированных шрифтов с изменяющимся фоном

Фон, на который будет помещен текст, представляет собой изображение в оттенках серого, но будет изменяться во время выполнения. Поскольку фон меняется, текст может быть поверх любого цвета от черного до белого.

Наилучшие значения, которые я нашел, - glBlendFunc (Gl.GL_SRC_COLOR, Gl.GL_ONE_MINUS_SRC_ALPHA). Это заставит черный ящик, окружающий символ, исчезнуть, но сам персонаж будет исчезать по мере того, как фон будет белым.

Пожалуйста, помогите!

ответ

1

Вы хотите, чтобы текст инвертировался в зависимости от цвета фона? белый текст на черном фоне, черный текст на белом? Я думаю, вы можете добиться инверсии через blendfunc.

В качестве альтернативы вы можете использовать текстуру шрифта, которая имеет «границу», встроенную в нее, чтобы помочь установить символ отдельно от фона. Представьте белый шрифт с гладким альфа-смешанным черным «свечением». Шрифт будет хорошо смотреться практически для всех цветов.