Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 26.02.2010, 01:53   #1
spamer
Software Developer
Старожил
 
Аватар для spamer
 
Регистрация: 19.12.2008
Сообщений: 2,070
По умолчанию OpenGL. Как НЕ закрашивать цвет фона?

Всем привет.
Вобщем, рисую я текст при помощи OpenGL, например на форме или на панеле - не важно, на каком то контроле.
При помощи команды glClearColor(0.0, 0.0, 0.0, 1.0); очищаю(устанавливаю) цвет контрола на котором буду рисовать текст. Вот так я пытался добиться что бы фон не изменялся, но не вышло. Все равно фон закрашивается, в данном случае черным цветом.
Так вот, как мене сделать, что бы OpenGL не изменял цвет фона контрола (формы, панельки), т.е. что бы рисовался только мой текст, а Color контрола не менялся ?
Кто что может посоветовать?
Будь проще и люди к тебе потянутся
spamer вне форума Ответить с цитированием
Старый 26.02.2010, 03:11   #2
raxp
Старожил
 
Регистрация: 29.09.2009
Сообщений: 9,713
По умолчанию

...дык считывайте цвет контрола перед этим и устанавливайте его в glClearColor().
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation
raxp вне форума Ответить с цитированием
Старый 26.02.2010, 22:19   #3
spamer
Software Developer
Старожил
 
Аватар для spamer
 
Регистрация: 19.12.2008
Сообщений: 2,070
По умолчанию

Цитата:
Сообщение от raxp Посмотреть сообщение
...дык считывайте цвет контрола перед этим и устанавливайте его в glClearColor().
Вот эта мысль меня тоже посетила вначале. Но не получилось было, а теперь понял почему не получилось, цвет я в glClearColor() передавал как Byte, а надо ведь было как GLFloat.
Вот как я теперь это реализовал, возможно кому то понадобится:
Код:
var
    mas : array[0..2] of GLFloat;
    C : TColor;

...

C := ColorToRGB(Form1.Color);
mas[0] := (C mod $100) / 255;
mas[1] := ((C div $100) mod $100) / 255;
mas[2] := (C div $10000) / 255;
   
glClearColor(mas[0], mas[1], mas[2] , 1.0);      
glClear(GL_COLOR_BUFFER_BIT);

...
raxp, Спасибо за помощь.

p.s репутацию поднять не разрешает(((
Будь проще и люди к тебе потянутся
spamer вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
КАК ИЗМЕНИТЬ ЦВЕТ ФОНА (ПАСКАЛЬ) mistertvister Помощь студентам 2 19.12.2009 23:10
Как сменить цвет фона рабочего стола? Paul Hindenburg Win Api 3 11.10.2009 05:50
Каким образом можно изменять цвет фона и цвет шрифта в Label? jungle Win Api 17 21.09.2009 00:38
Как с помощью JavaScript изменить цвет фона ячеек в таблице,так что бы можно было выбрать цвет из списка Gotessa JavaScript, Ajax 1 09.05.2009 16:05