Чтобы отключить наложение пара - PullRequest
0 голосов
/ 17 сентября 2018

У меня есть следующие настройки для игры:

  1. launcher.exe - запускается в Steam под Windows и предоставляет пользовательский интерфейс с некоторыми настройками.
  2. Затем launcher.exe запускает саму игру.

Проблема в том, что launcher.exe использует ускоренный интерфейс H / W - использует Direct2D / DirectX.

Эта страница https://partner.steamgames.com/doc/features/overlay гласит:

Ваша игра не должна делать ничего особенного, чтобы оверлей работать, он автоматически подключается к любой игре, запущенной из Steam!

Но в моем случае это создает проблемы - наложение создается в неправильном окне. Таким образом, launcher.exe (использует DirectX) имеет оверлей, но окно, созданное game.exe (реальная игра, использует DirectX и / или OpenGL), отсутствует.

И вот вопрос: как я могу изменить код моего окна launcher.exe, чтобы предотвратить наложение Steam на него «автоматически»?

Обновление, ответ от TS Valve:

Извините, нет кода для выборочного включения или отключения оверлей между лаунчерами и играми!

Единственный «вариант» - отключить рисование DirectX в launcher.exe. В этом случае их внедренная DLL не создаст эту вещь. Но это фактически означает отсутствие графического интерфейса с графическим интерфейсом в Steam ... Тип дизайна "640 КБ достаточно для всех".

В идеале Steam должен отправить в окно какое-то пользовательское сообщение, чтобы спросить, как и где окно хочет, чтобы это наложение было отображено. Но, видимо, такой вещи не существует или нет?

Просто для контекста, лаунчер выглядит так:

As you see there is no room for overlay

...