Comments (4)
I think matching against loaded DLLs would be more than enough for 99% of use cases, but I have also been briefly looking into querying the COM interfaces, though I'm afraid that would be flimsier.
As per how to have double hooks in hudhook
, until a feature like this lands (I'd like it to!) you could just roll-your-own DllMain
method where you first determine what backend is being used, and then conditionally setup the hooks. I think if you copy the macro code verbatim for that you should be good to go!
from hudhook.
These are the modules which are available in the games I have tried.
Looking at this list it should be possible to build a best-effort backend checker. Funnily enough, both the OpenGL 3 and the DirectX 11 renderers work for Baldur's Gate so either result would be fine, but for Elden Ring which also loads OpenGL that is not true. So at a minimum I'd introduce a priority mechanism where dx12 > dx11 > dx9 > opengl3
from hudhook.
At the end of the day I ended up doing something incredibly idiotic but it did work heh, haven't had the need to do anything more extensive.
from hudhook.
Well, that's not much different from the way I'd have implemented something like that :D
Thinking about it, I guess this kind of logic might depend heavily on each client's needs, so not sure whether to include it as a first-party thing. It would probably still be a good idea to have a cookbook of these strategies in hudbook
, so I'm keeping this open to track that.
from hudhook.
Related Issues (20)
- Incompatibility Issue with Sea of Thieves (DX11) HOT 16
- Update documentation
- Replace texture image data HOT 4
- Update `hudbook`
- Outdated HookBuilder documentation HOT 1
- `DirectComposition` is not implemented on Wine HOT 19
- A way to work together with detour ? HOT 4
- Errors on Resident Evil 2 and Testing on Other Games HOT 7
- Automated testing harness
- Add performance metrics
- Bump to `windows` 0.53
- Write a coobook
- An issue with version 0.6.5 HOT 8
- Support uploading images of any width HOT 1
- DX8 HOT 2
- Question about loading and using font HOT 3
- Plan for 0.7 HOT 4
- Backend assertion failure (possibly from wrong mouse event handling) HOT 12
- need ways to filter certain windows message, without blocking everything HOT 1
- hudhook pipeline doesn't report `delta_time` to imgui runtime HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from hudhook.