Найдите исполнителя для вашего проекта прямо сейчас!
Разместите заказ на фриланс-бирже и предложения поступят уже через несколько минут.

Здравствуйте!

Есть Nodejs (electron) приложение, с помощью которого можно запускать игру на Opengl.

Нужно написать 2 приложения на c++, которые общаются друг с другом реализуя IPC соединение.

1 приложение:

Внешний DLL, который будет устанавливаться в процесс игры. Внутри-игровой overlay - opengl hook (swapBuffers).

2 приложение:

NodeJS Addon, который даст нужное API для взаимодействия с 1 приложением через основное приложение на Nodejs. DLLInject, передача данных из окна игры на Opengl в основное приложение и обратно (Keyboard, Mouse input).

Что показывать в игре:

На стороне NodeJS приложения мы используем offscreen-rendering. По сути - это обычное браузерное окно, в которое мы загружаем свое приложение. Каждый раз, когда рендерится фрейм этого окна, мы должны иметь возможность отправить Buffer в приложение 2, чтобы оно отправило их в приложение 1, а приложение 1 - отрендерило его на экране через swapBuffers хук.

Offscreen Rendering окно так же принимает Input, который позволяет взаимодействовать с контентом внутри окна.

Что-то похожее реализовано в этом гитхаб репозитории: goverlay, но есть следующие проблемы:

- Отсутствие поддержки Opengl (только DirectX)

- Мы не очень уверены в авторе репозитория

- Слишком много лишнего внутри репозитория

Мы так же попытались сами реализовать подобный функционал, но среди нас только nodejs "разработчики":)

Однако можем и нашими "наработками" поделиться, там реализован полностью dllInjector и opengl hook с использованием библиотеки minhook. Но все это - мягко скажем, не для продакшена.

Хотелось бы узнать стоимость и сроки выполнения подобного заказа.

2 года назад
Twelvee
Сергей 
31 годРоссия
11 лет в сервисе
Был
год назад