Два полных экрана окон на двух других экранах

Я на самом деле работаю над приложением для отображения изображения на Купол.

Система проекции купола является constitued двух проекторов и ПК, выполняющего GentoO Linux и KDE с системой Nvidia TwinView.

Так как здесь я использовал SDL для отображения полноэкранных окон, и он отображается, мое приложение на эти два экранируют.

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

Вот почему я ищу решение отобразить полноэкранное окно на первом экране (проектор) и другой на втором. Но полный экран SDL просто расширяет окно до двух экранов.

Я могу использовать любой librairie (начиная с него легкий и свободный, поскольку я перенесу его в свой маленький "API"), или измените настройки дисплея. BTW было бы хорошо иметь поддержку openGL, начиная с SDL, управляют только одним окном ^^"

1
задан Compass 4 December 2014 в 20:07
поделиться

3 ответа

Я предполагаю, что SDL (или, скорее, OpenGL или что-то еще, что он использует для отображения графики) считает у вас есть только один большой экран.

Следовательно, показывать две разные вещи на разных экранах не имеет смысла (потому что у вас есть только один экран).

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

Другим «решением» было бы вычислить координаты / границы ваших экранов и грамотно отобразить все на вашем единственном эмулированном экране, но:

  1. Это уродливо
  2. Подвержено ошибкам
  3. Мне это не нравится
0
ответ дан 3 September 2019 в 01:01
поделиться

Думаю, у меня есть для вас решение. Вам нужно установить все, что связано с USE-флагом xinerama. Затем установите мета-режимы в конфигурации X или с помощью настроек nvidia для каждого экрана. Это заставляет ваши мониторы выглядеть для водителя как один экран, но информирует оконный менеджер о ваших независимых границах экрана. Теперь вы можете перетаскивать вперед и назад из окна в окно, И вы можете делать независимый полноэкранный режим для каждого из них. Ура!

Примечание: я успешно протестировал это в Gnome, но еще не в KDE.

Удачи!

Изменить: забыл упомянуть, что тогда вам все еще нужно выяснить, как заставить ваше приложение поддерживать мета-режим. : p

1
ответ дан 3 September 2019 в 01:01
поделиться

Хороший трюк, но на самом деле это не решение.

Вместо этого вам нужно использовать SDL 1.3 (не реализовано в 1.2) и вызвать SDL_SelectVideoDisplay (index_of_mmonitor) (обычно 0 для первого монитора и 1 для второго), чтобы вы могли направить вывод своей работы SDL на предпочитаемый вами экран (полноэкранный или нет) .

С уважением.

1
ответ дан 3 September 2019 в 01:01
поделиться
Другие вопросы по тегам:

Похожие вопросы: