-
Notifications
You must be signed in to change notification settings - Fork 85
[Hacky tool] hsG3DDeviceDumper #1744
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
b910539 to
e4fcaa8
Compare
f60f968 to
282c217
Compare
|
In theory this is ready (although TBD if it's worth merging the tool or just picking the various other bits into their own PR without the tool). The one thing I've not been able to test properly is Windows: In my Windows VM, epoxy wgl seems to fail to get a context, although non-epoxy wgl works. If someone is able to grab a build from CI and run it on Windows and confirm if it prints out an OpenGL driver version and display resolutions, that would be very helpful. |
|
It seems to work fine here: and then a whole pile of stuff follows. |
|
It should print an OpenGL driver name/version followed by screen resolutions, and then do the same for DirectX. I think I've seen a case where it printed multiple DX drivers. On my VM it's not printing the OpenGL driver at all. |
|
This is the full output: https://gist.github.com/Hoikas/be149dd5f80f8f850aa6b271efbd797c |
|
hmm, yeah, that looks like 2 DX drivers and |
f1a58cd to
9c4004a
Compare
|
This latest revision seems to work for me in wine, but not in my Windows VM. |
|
Looks like I'm now getting an OpenGL driver: https://gist.github.com/Hoikas/e1af43129027a6e9461c6089f50a9adb |
|
I'm still unclear whether the tool itself has any long-term value and should be merged or not, but this seems like a good starting point for other Linux and OpenGL work |
9c4004a to
fb2493a
Compare
|
Decision to be made here: Do we think having this tool is useful, or should I split out the device enumeration fixes into their own PR and close the tool part of this one? |
|
I think the tool functionality might be more useful long-term as a console command, but I'm not working on adding new clients/platforms so my opinion on that is not strong. |
fb2493a to
88a6a7b
Compare
88a6a7b to
154392f
Compare
| @class NSScreen; | ||
| #else | ||
| class NSScreen; | ||
| #endif |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think this should be ok for now - but this situation will get worse. iOS doesn't support CGDirectDisplayID - it only has Cocoa types. I'll continue thinking about it.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe a plIOSDisplayHelper would make sense for that case if it's different enough?
fbc6956 to
58f7275
Compare
Sources/Plasma/FeatureLib/pfDisplayHelpers/plWaylandDisplayHelper.cpp
Outdated
Show resolved
Hide resolved
Sources/Plasma/FeatureLib/pfDisplayHelpers/plWaylandDisplayHelper.cpp
Outdated
Show resolved
Hide resolved
Sources/Plasma/FeatureLib/pfDisplayHelpers/plWinDisplayHelper.cpp
Outdated
Show resolved
Hide resolved
Sources/Plasma/FeatureLib/pfDisplayHelpers/plWinDisplayHelper.cpp
Outdated
Show resolved
Hide resolved
| public: | ||
| virtual ~plDisplayHelper() {} | ||
|
|
||
| virtual plDisplayMode DesktopDisplayMode() = 0; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I was noticing this in the derived classes you added - this will make a copy of the display mode when called. I wonder if we should - potentially in another PR - change this to return a const reference to avoid that.
Co-Authored-By: Adam Johnson <AdamJohnso@gmail.com>
This tool is a hack to facilitate debugging of pipeline device/driver init stuff, but seems potentially worth having. I'm sure it could be made less terrible, but I'm aiming for "immediately useful to me" at the moment.
This is essentially the same as the plOptionalWinCall introduced for DPI handling, except that it doesn't enforce WINAPI calling conventions and can also be used to dynamically load values as well as functions.
Co-Authored-By: Adam Johnson <AdamJohnso@gmail.com>
58f7275 to
34d0099
Compare
Prints out the available hsG3DDeviceRecord records along with their hsG3DDeviceMode resolutions for debugging purposes.
Incredibly hacky code 😛