C очень переносим, гораздо больше, чем C ++ был 10 лет назад.
Кроме того, C очень укоренился в традиции Unix. Подробнее читайте в « Искусство программирования Unix », о Unix и OO в целом и о конкретных языках в Unix (включая C и C ++).
Просто предположение, но может ли быть, что у вас нет цвета фона? Итак, при рендеринге второй вершины с альфа-значением 0,1 нет фона для вычисления правильного цвета? Только предположение, прошло много лет с тех пор, как я использовал opengl.
у вас есть возможность использовать альфа-смешение? А вы установили параметры наложения? Вы не можете просто установить альфа-канал, необходимый для настройки различных других параметров в OpenGL.
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
glEnable( GL_BLEND );