Я накладываю приложение OpenGL (C++), это приложение openGL использует SetDeviceGammaRamp для установки яркости рабочего стола на очень высокий уровень (не знаю почему). Это приложение полноэкранное и выглядит хорошо, но мой оверлей очень яркий. Вместо оранжевого цвета с нормальной яркостью я становлюсь желтым из-за высокой гаммы.GetDeviceGammaRamp для настройки цветов
Что я хочу сделать: Получите гамму, установленную в данный момент (используя GetDeviceGammaRamp), а затем используйте ее для настройки цветов, которые я установил.
Нравится; glColor4f (r, g, b, a) становится glColor4f (r/gamma, g/gamma, b/gamma, a);
Поэтому, если яркость рабочего стола очень высока, значения r g и b будут ниже (темнее) и будут выглядеть так, как должны.
Как это сделать? GetDeviceGammaRamp заполняет таблицу, как я могу ее использовать для изменения моих цветов?
Благодаря