Как получить все поддерживаемое разрешение для нескольких мониторов с помощью FREEGLUT?

0

У меня есть код Windows, который создает список доступных разрешений для нескольких мониторов.

Теперь мне нужно портировать его на Linux, поэтому я думаю использовать "FREEGLUT", чтобы я мог получать информацию о мониторах для Linux и окон, используя тот же код.

Мне нужна помощь, чтобы получить некоторый указатель, чтобы получить все поддерживаемое разрешение нескольких мониторов..?

Надеюсь, мы сможем сделать это с помощью бесплатного перенасыщения.

Теги:
opengl
winapi
glut

2 ответа

0
Лучший ответ

Я использую GLFW 3.0.4, чтобы получить поддерживаемое разрешение нескольких мониторов. Я предпочел использовать определенную платформу для применения разрешения монитора.

// Get Resolution of Multimonitor
int totalMonitor;
GLFWmonitor** monitors = glfwGetMonitors(&totalMonitor);


printf("\n\n---------------------------------------------------------");
printf("\n Total monitor [%d]",totalMonitor);

printf("\n primary monitor [%s]",glfwGetMonitorName(glfwGetPrimaryMonitor()));
printf("\n\n---------------------------------------------------------");

for(int currMonitor=0;currMonitor<totalMonitor;currMonitor++)
{
    printf("\n monitor name: [%s]",glfwGetMonitorName(monitors[currMonitor]));      

    int count;
    const GLFWvidmode* modes = glfwGetVideoModes(monitors[currMonitor], &count);

    for (int i = 0; i < count; i++)
    {
        printf("\n  %d : [%d X %d]~[%d]",i,modes[i].width,modes[i].height,modes[i].refreshRate);
    }

    printf("\n---------------------------------------------------------");
}
1

Linux сам по себе не имеет графической системы. Вы должны полагаться на что-то вроде X11 или Wayland. В настоящее время X11 - это система, которая обычно найдена, и X11-API для перечисления и настройки мониторов называется XRandR. FreeGLUT действительно не раскрывает эту функциональность. Поэтому либо используйте фреймворк, который выполняет или реализует его самостоятельно.

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

  • 0
    Библиотека glfw помогла мне извлечь доступное разрешение мониторов, так как вы предположили, что я буду использовать библиотеку для конкретной платформы для дальнейшей работы.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню