9 Commits

Author SHA1 Message Date
Nemirtingas
44d583ee7d Added class Renderer_Detector.
Hook_Manager now only manages hooks.
Renderer_Detector is used to detect the game's renderer. There will be 2 version of it. 1 for windows and 1 for Linux.
2019-08-27 15:38:07 +02:00
Nemirtingas
8e07dd0c6b Changed window detection. 2019-08-26 16:38:21 +02:00
Nemirtingas
dd530e80b1 Now passing to hooks device object.
Added Base_Hook::get_lib_name to track what renderer is hooked for overlay.
Objects used to detect renderer type are now also used to hook the rendering functions. So we don't have to build another device.
Updated VTables for DX12.
2019-08-26 16:38:01 +02:00
Nemirtingas
cd8c5fc2ea Fixed memory leak 2019-08-25 21:22:25 +02:00
Nemirtingas
4db2b6528c Changed window detection code.
GetModuleHandle(NULL) get the exe handle. Sometimes the window couldn't be found because the window wasn't created in the .exe but in a dll. Thats why I list all dll HANDLES and try to find the main window handle.
2019-08-21 21:50:59 +02:00
Nemirtingas
0fa2d82c67 Fixed overlay on x64
They are not longer available with GetWindowLong. There is a new function GetWindowLongPtr.
GWLP* must be used.
2019-08-21 10:46:58 +02:00
Nemirtingas
5a0653d080 Refactor dx device creation
Find the game's window instead of using the foreground window.
2019-08-20 23:27:17 +02:00
Nemirtingas
3c83e08d34 Fix the last frame before not showing overlay
The last frame was sending inputs to the game window, making the game receive a <TAB>.
2019-08-18 17:49:47 +02:00
Nemirtingas
5b0306dccc Moved window hooks to its own class
Every class has a job. Overlay is to show an overlay not to hook windows functions.
Hook_Manager's job is to manage hooks and should not contain a reference to the overlay. (It should not contains any reference to directX or OpenGL either but I'll see that later... Maybe)
This makes the overlay code much cleaner and "could" be used in Linux as well.
2019-08-18 16:22:07 +02:00