Градиент в OpenGL
Всем-всем, добрый день!!!
Есть у меня одна простая задача, которая не решается почти год (не могу сказать, что я этим горжусь

Нужно нарисовать КРУГ так, чтобы центр был светлым, а ближе к краям цвет плавно изменялся вплоть до черного (Рис.1)

Рис.1 Окружность залитая монохромным градиентом
И все хорошо если круг такого же размера как и на Рис.1, но как только размер увеличивается или же уменьшается контраст между центром и краями, то выплывают самые некрасивые вещи…
Во-первых появляются концентрические окружности (Рис.2).

Рис.2 Проявление концентрических окружностей
Во-вторых этот эффект ни чем не получается устранить: ни увеличением промежутков цветовой составляющей, ни изменением альфа-канала.
При тех же значениях - тот же эффект! Грустно

Многие подумают что это похоже на 8 битное изображение. Тогда вопрос, как проверить какой режим OpenGL выбирает для рисования?
Заранее оговорюсь никаких шейдеров, текстур и тому подобного я не использую. Сейчас все рисуется так:
-
Круг рисуется, как набор из GL_TRIANGLE_FAN;
-
Центр окружности (вершина А треугольника АБЦ) имеет цвет glColor4fv(HI_color) - светлая середина;
-
Вершины Б и Ц - точки на окружности, имеют цвет glColor4fv(LOW_color) - темные края;
-
Градиент OpenGl рисует сам, как в Уроке 5.3 про треугольник со спектральным разложением.
Дело, мне кажется в том, что Джель “не понимает” цвета меньше значения 1/(byte)255 = (float)0.0039
ВОПРОС
Какой предел имеют параметры цвета в модели RGBA (сотые, тысячные, десятитысячные (.00, .000, .0000))? До какой степени можно дробить эти параметры, чтобы была видна разница в цвете?
И как можно обойти подобные ограничения по выводу цвета на экран?
ДЛЯ ЧЕГО ЭТО ВСЕ НУЖНО
Нужно изменяя либо цвет, либо прозрачность (альфа-канал) добиться плавного растворения фигуры в цвете фона сцены так, чтобы четкие переходы не были видны.