Я экспериментирую с разработкой инструмента для удаленного рендеринга OpenGL на C++. Основная идея заключается в том:OpenGL визуализировать передачу в реальном времени
- клиент выдает команды OpenGL, как это нормальное приложение
- Эти команды фактически передаются по сети к внешнему серверу
- сервер выполняет рендеринг с помощью некоторых OFF- экранная техника
- После этого сервер передает клиенту один кадр по сети
- Клиент отображает рамку на экране.
- Петля.
Я знаю, что не стоит начинать беспокоиться об оптимизации, если у меня нет готового продукта, но я уверен, что это будет очень медленно, и узкое, вероятно, будет для передачи одного кадра по сети, даже если эти компьютеры подключены в одной локальной сети.
Я думаю об использовании какой-либо библиотеки потокового видео. Таким образом, кадры будут передаваться с использованием надлежащих алгоритмов сжатия, что ускорит процесс.
У меня на правильном пути об этом? Правильно ли здесь использовать библиотеку потокового видео? Если вы так думаете, какая хорошая библиотека для этой задачи (в C или C++, желательно C++)?
Благодарим за помощь!
Какая разница с существующими инструментами (X11, ssh -X, VNC, VirtualGL)? – Calvin1602
Это действительно образовательный проект для обучения, поэтому я не буду использовать их. Не используйте ни один из них, поэтому я не знаю конкретных различий. Но спасибо, что упомянули об этом, заглянем в них для понимания. –
Похоже на полпути к чему-то вроде [OnLive] (http://en.wikipedia.org/wiki/OnLive) и др. Возможно, стоит посмотреть на статьи о них. –