/goverlay

DirectX hook and game overlay solution for Electron, Qt and CEF, just like discord/steam game overlay,inject any app to overlay in your game

Primary LanguageC++MIT LicenseMIT

DirectX hook and game overlay solution for any desktop GUI like Electron, Qt, CEF and WPF⚡

Codacy Badge

Build status

game overlay solution

  • based on DirectX hook, draw in game
  • support any GUI framework, use the power of web/WPF/Qt to inject any app to overlay in your game
  • easy window management
  • input intercept

screenshot

demo

NOTE

  1. need Visual Sudio 2019 to build native C++ project.
  2. we can assocciate a new IME conext if game disabled it, but in fullscreen it will cause window to lose focus.
  3. node-gyp need python2 installed on system and make sure it's added to PATH

run demo

  1. git clone https://github.com/hiitiger/goverlay.git
  2. run demo client
    • this includes the steps to build node native-addons electron-overlay and node-ovhook
        cd client
        npm link ../electron-overlay
        npm link ../node-ovhook
        npm i
        npm run compile:electron
        npm run build
        npm run start
    
  3. click the start button to start overlay
  4. start a d3d game, type its window name and inject

inject a specific game

After you have the demo runs right

  1. copy files [n_overlay.dll, n_overlay.x64.dll, injector_helper.exe, injector_helper.x64.exe] from directory game-overlay\prebuilt to directory node-ovhook\build\Release
  2. run demo client
  3. click start button to start overlay
  4. start the game you want to inject to and wait for it game window to show
  5. input the window title(or part of the title) of the game, and click the inject button

use in your own project

  1. checkout document about how to use it in your own project

feature

  • electron offscreen window overlay in game
  • dx12 api support
  • dx11 api support
  • dx10 api support
  • dx9 api support
  • OpenGL api support
  • native draw overlay
  • hardware acc osr bitmap transport
  • multi windows support
  • window z-index and focus
  • in game sync drag and resize
  • in game defered drag and resize
  • window draw policy
  • input intercepting by manually control
  • custom shaped window (alpha test for mouse handling)
  • detailed injecting configuration
  • input intercepting by auto mouse check

todo

  • brwoser window state manage
  • better hotkey
  • session reconnect

support

contact me for other GUI frameworks support or need any special feature.

sponsor

Ethereum (ETH) 0x40c44FEFc531676cc2144F212AC074BE246f5B3c