Честно не говоря не до конца "въехал" в предложение. Отвечу как понял.
1. Программа prog собрана на обычном buildroot. При выводе через фреймбуфер, рисует нормально prog -qws
2. Если ее запустить дополнительно через драйвер openGL prog -displey opengl:rgb16 -qws
ничего не рисует.
3. Программа navig собрана на buildroot с поддержкой OpenGL. При выводе через драйвер openGL navig -displey opengl:rgb16 -qws
рисует нормально
4. Если navig запустить без драйвера openGL navig -qws
ничего не рисует.
Честно не говоря не до конца "въехал" в предложение. Отвечу как понял.
1. Программа prog собрана на обычном buildroot. При выводе через фреймбуфер prog -qws
, рисует нормально
2. Если ее запустить дополнительно через драйвер openGL prog -displey opengl:rgb16 -qws
ничего не рисует.
3. Программа navig собрана на buildroot с поддержкой OpenGL. При выводе через драйвер openGL navig -displey opengl:rgb16 -qws
рисует нормально
4. Если navig запустить без драйвера openGL navig -qws
ничего не рисует.
glutHideWindow() - функция из OpenGL Utility Toolkit (GLUT) — библиотека утилит для приложений под OpenGL, которая в основном отвечает за системный уровень операций. К сожалению в существующем builroot ее нет.
попробуйте сначала запустить прогу с opengl "как есть", а вторую с соседней консоли с ключами типа " -qws -display linuxfb:/dev/fb1" (если не пойдет, то попробуйте fb2)
смысл операции - у вас есть базовый фреймбуфер fb0 с оверлеем fb1 - два независимых устройства в одном экране..
если запуск пройдет успешно будете крутить прозрачность..
Тогда вопрос элементарно решается как написал Павел и Юра - GL приложение запускаете как есть (GPU по умолчнию использует fb0 -> BG - находится на заднем плане ), обычное - на /dev/fb2 (это оверлей по умолчанию для fb0, FG - передний план). Пример переключение видимости FG/BG есть в imx-test http://download.ossystems.com.br/bsp/freescale/source/imx-test-11.09.01.tar.gz , см. mxc_fb_test.c