Nemirtingas
5af1d18a8f
Fixed overlay thread joining on himself
2019-09-02 10:51:32 +02:00
Nemirtingas
aeeb85da55
This should do something like this
...
(Working on portal2 ubuntu 18.04)
2019-09-02 10:51:16 +02:00
Nemirtingas
95e87eb832
Clean Linux Detour
2019-09-01 23:21:50 +02:00
Nemirtingas
b9cd9ae6c2
Fix build
2019-09-01 20:53:16 +02:00
Nemirtingas
1785ae6eaf
Moved every platform specific code to their own folder
2019-09-01 20:48:27 +02:00
Nemirtingas
dd13377be7
Added linux arch define
2019-09-01 20:47:46 +02:00
Nemirtingas
549dc7c50e
This carries window exit
2019-09-01 20:47:13 +02:00
Nemirtingas
c27ab3993c
Linux renderer detection
2019-09-01 20:47:10 +02:00
Nemirtingas
86f94bc337
Linux hooks
2019-09-01 20:47:07 +02:00
Nemirtingas
8a6db1c401
ImGui X11 impl
2019-09-01 20:47:04 +02:00
Nemirtingas
0573c4eb94
Windows only part
2019-09-01 20:47:00 +02:00
Nemirtingas
495bc957cd
Added some os detection
...
Need to detect linux x86 or x64
2019-09-01 20:46:55 +02:00
Nemirtingas
92ed36f499
Linux version of detour
2019-09-01 20:45:43 +02:00
Nemirtingas
b6eb929383
Should fix the cursor until we draw our own cursor.
2019-08-27 21:15:58 +02:00
Nemirtingas
4f7e42a905
Call the true function before initializing hook.
2019-08-27 19:56:41 +02:00
Nemirtingas
3c265596a9
Removed DX12 until further notice.
2019-08-27 19:21:32 +02:00
Nemirtingas
622c435cb7
Fixed typo in DX12 & reorder hook call.
...
Should call the Present function before hooking DX cause DX also hook Present even if the hook is disabled by Renderer_Detector before initializing the DX hook.
2019-08-27 17:40:44 +02:00
Nemirtingas
78e57f0693
Cleanup
...
This is not part of the overlay.
2019-08-27 17:16:31 +02:00
Nemirtingas
36e8966223
Cleanup again
2019-08-27 16:29:20 +02:00
Nemirtingas
04847abeb7
Overlay & Hook cleanup.
2019-08-27 15:45:53 +02:00
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
ff25f294f0
Fixed typo
2019-08-27 00:16:53 +02:00
Nemirtingas
45db63a738
Merge branch 'master' into overlay_h
2019-08-26 21:25:32 +02:00
Mr_Goldberg
734ff89291
Gitlab ci fix.
2019-08-26 14:45:49 -04:00
Mr_Goldberg
22c32c46b6
Forgot this.
2019-08-26 13:49:18 -04:00
Nemirtingas
9b178146c4
Cleaned a bit hooks and added sanity checks.
2019-08-26 19:36:07 +02:00
Nemirtingas
2365b50c38
Merge branch 'master' into overlay_h
2019-08-26 19:32:06 +02:00
Mr_Goldberg
bca4bd6dc1
Added a way to configure stats and moved parser logic to other file.
2019-08-26 13:01:45 -04:00
Mr_Goldberg
1d920c538a
Christsnatcher .bat improvements.
2019-08-26 13:01:00 -04:00
Nemirtingas
d0251b0b01
Some kind of DX12 hook
2019-08-26 16:46:56 +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
42a22dd4bb
Don't free objects with shutdown
...
Some games don't like to free the DX objects after the game has shut down.
2019-08-21 21:52:08 +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
dc7480c633
Better compatibility for dx10 and 11
2019-08-20 08:27:50 +02:00
Nemirtingas
8757f4a548
Fixed ressource leaks.
2019-08-19 19:51:35 +02:00
Nemirtingas
c99628a88a
Added hook retry.
...
Handed hook detection to a thread that can then retry.
With that, don't need to wait for loadLibrary.
Will remove all those commented functions in another version.
2019-08-19 18:57:55 +02:00
Nemirtingas
5893b69d1f
Partially working DX12 overlay
...
DX12 hook seems ok, there are some bugs remaining.
ImGui setup for DX12 doesn't work.
2019-08-19 18:56:15 +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
ca0ef4380a
Moved hooks calls and added hook retry
...
With that change, I no longer re-hook rendering functions as Hook_Manager::FoundRenderer removes all hooks and then we hook the true functions in the renderer specialization.
Added a retry count.
2019-08-18 17:12:57 +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
Nemirtingas
f096a2d8a2
Use LoadLibrary instead of LoadModule
...
LoadLibrary increase the reference count to the library. So we make sure this library is still loaded when we shut down the hook.
2019-08-18 16:19:28 +02:00
Nemirtingas
fdeb5912d3
Try to Disable all inputs when overlay is on
2019-08-18 14:29:08 +02:00
Nemirtingas
7daf605511
Merge branch 'master' into overlay_h
2019-08-18 12:30:51 +02:00
Mr_Goldberg
ced9b77afc
Tweaked auth delays.
2019-08-17 18:15:18 -04:00
Mr_Goldberg
06b4332187
Add some commented out code to disable https in winhttp.
2019-08-17 18:03:21 -04:00
Mr_Goldberg
0e17aeef76
Basic steamclient.dll emulation.
...
Build with STEAMCLIENT_DLL defined to build in steamclient.dll mode.
2019-08-17 18:02:15 -04:00