Giter Site home page Giter Site logo

linecode / gelectron Goto Github PK

View Code? Open in Web Editor NEW

This project forked from hiitiger/goverlay

0.0 1.0 0.0 131.06 MB

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

License: MIT License

TypeScript 0.19% JavaScript 0.02% Python 0.04% C++ 61.83% C 34.56% QMake 0.09% Prolog 0.01% Objective-C 2.95% HLSL 0.29% FLUX 0.03% Batchfile 0.01%

gelectron's Introduction

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

Codacy Badge

Build status

game overlay for Electron

use the power of web to inject any web app to overlay in your game

screenshot

demo

NOTE

  1. need Visual Sudio 2017 to build native C++ project.
  2. use 32bit node to install 32bit electron (game overlay support x64 no matter electron version), if you want to use 64bit electron, modify compile:electron script in client/package.json.
  3. we can assocciate a new IME conext if game disabled it, but in fullscreen it will cause window to lose focus.
  4. node-gyp need python2 installed on system and make sure it's added to PATH

run demo

  1. git clone https://github.com/hiitiger/gelectron.git
  2. git submodule update --init --recursive
  3. cd to boost and do boost bootstrap
  4. 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
    
  5. click the start button to start overlay
  6. open gameoverlay.sln and build all (Release/Win32 + Release/x64) or just run build.bat in game-overlay directory
  7. start dx11app and press ESC to do load inject dll for test
  8. press F1 to swtich input intercepting

inject a specific game

After you have the demo runs right

  1. copy files [n_overlay.dll, n_overlay.x64.dll, n_ovhelper.exe, n_ovhelper.x64.exe] from directory game-overlay\bin\Release 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
  • 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

gelectron's People

Contributors

hiitiger avatar honzapatcz avatar kutu avatar lincolnthree avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.