как сбросить цвет в opengl после использования glColor4f - PullRequest
1 голос
/ 13 февраля 2012

Все, что отображается после того, как вы установили цвет, использует тот же цвет, и это распространяется на кадры и не будет сброшено в промежутке.

Может кто-нибудь предложить способ отключить настройку цвета после его использования?

Ответы [ 2 ]

6 голосов
/ 13 февраля 2012

OpenGL - это конечный автомат. Как только вы установите цвет, вы не сможете его вернуть. Один из механизмов, который вы можете использовать, это glPushAttrib и glPopAttrib. glPushAttrib(GL_CURRENT_BIT) сохраняет цвет и некоторые другие вещи, а glPopAttrib() восстанавливает его.

Возможно, вам придется использовать другой механизм для того, что вы хотите сделать. Сохранение и восстановление состояния - это дорогое решение.

0 голосов
/ 13 июня 2017

Если под «выключить» вы имеете в виду «снова к белому», вы просто можете установить состояние обратно в glColor3f (1, 1, 1). В opengl есть несколько вызовов, которые могут сделать это, поэтому измените это по мере необходимости.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...