Oolite on HDR Displays

News and discussion of the PC port of Oolite.

Moderators: winston, another_commander

another_commander
Quite Grand Sub-Admiral
Quite Grand Sub-Admiral
Posts: 6916
Joined: Wed Feb 28, 2007 7:54 am

Re: Oolite on HDR Displays

Post by another_commander »

I am sorry, I think I made a mistake somewhere. Here is a hopefully bug fixed version of the utility. Could you please give this a try?

Download: https://www.filemail.com/d/vvqbnaqmdrbsugf
Commander_X
---- E L I T E ----
---- E L I T E ----
Posts: 705
Joined: Sat Aug 09, 2014 4:16 pm

Re: Oolite on HDR Displays

Post by Commander_X »

another_commander wrote: Tue Jul 29, 2025 3:49 pm
I am sorry, I think I made a mistake somewhere. Here is a hopefully bug fixed version of the utility. Could you please give this a try?

Download: https://www.filemail.com/d/vvqbnaqmdrbsugf
Yes, the "monitor is attached/monitor active" seem to reflect "the situation on the ground", now:

Code: Select all

EnumDisplayDevices i: 0
cb: 840
DeviceName: \\.\DISPLAY5
DeviceString: Microsoft Basic Display Adapter
StateFlags: 134217728
DeviceID: PCI\VEN_1234&DEV_1111&SUBSYS_11001AF4&REV_02
DeviceKey: \Registry\Machine\System\CurrentControlSet\Control\Video\{98750937-E9E3-11EC-9519-806E6F6E6963}\0000
  Attached monitor i: 0 of device 0
  cb: 840
  DeviceName: \\.\DISPLAY5\Monitor0
  DeviceString: Generic PnP Monitor
  StateFlags: 2
  DeviceID: \\?\DISPLAY#RHT1234#4&27b1e55b&0&UID0#{e6f07b5f-ee97-4a90-b076-33f57bf4eaa7}
  DeviceKey: \Registry\Machine\System\CurrentControlSet\Control\Class\{4d36e96e-e325-11ce-bfc1-08002be10318}\0000
monitor is attached
EnumDisplayDevices i: 1
cb: 840
DeviceName: \\.\DISPLAY1
DeviceString: NVIDIA GeForce RTX 2070 SUPER
StateFlags: 5
DeviceID: PCI\VEN_10DE&DEV_1E84&SUBSYS_87081043&REV_A1
DeviceKey: \Registry\Machine\System\CurrentControlSet\Control\Video\{09F77703-97E3-11EF-95DE-F072755928E2}\0000
attached to desktop
device primary device
display active
  Attached monitor i: 0 of device 1
  cb: 840
  DeviceName: \\.\DISPLAY1\Monitor0
  DeviceString: Generic PnP Monitor
  StateFlags: 2
  DeviceID: \\?\DISPLAY#GSM5B55#4&1991b1ff&1&UID4194562#{e6f07b5f-ee97-4a90-b076-33f57bf4eaa7}
  DeviceKey: \Registry\Machine\System\CurrentControlSet\Control\Class\{4d36e96e-e325-11ce-bfc1-08002be10318}\0013
monitor is attached
  Attached monitor i: 1 of device 1
  cb: 840
  DeviceName: \\.\DISPLAY1\Monitor1
  DeviceString: Generic PnP Monitor
  StateFlags: 3
  DeviceID: \\?\DISPLAY#GSM5B71#4&1991b1ff&1&UID4194565#{e6f07b5f-ee97-4a90-b076-33f57bf4eaa7}
  DeviceKey: \Registry\Machine\System\CurrentControlSet\Control\Class\{4d36e96e-e325-11ce-bfc1-08002be10318}\0014
monitor is attached
monitor active
EnumDisplayDevices i: 2
cb: 840
DeviceName: \\.\DISPLAY2
DeviceString: NVIDIA GeForce RTX 2070 SUPER
StateFlags: 1
DeviceID: PCI\VEN_10DE&DEV_1E84&SUBSYS_87081043&REV_A1
DeviceKey: \Registry\Machine\System\CurrentControlSet\Control\Video\{09F77703-97E3-11EF-95DE-F072755928E2}\0001
attached to desktop
display active
  Attached monitor i: 0 of device 2
  cb: 840
  DeviceName: \\.\DISPLAY2\Monitor0
  DeviceString: Generic PnP Monitor
  StateFlags: 2
  DeviceID: \\?\DISPLAY#GSM5B55#4&1991b1ff&1&UID4194562#{e6f07b5f-ee97-4a90-b076-33f57bf4eaa7}
  DeviceKey: \Registry\Machine\System\CurrentControlSet\Control\Class\{4d36e96e-e325-11ce-bfc1-08002be10318}\0013
monitor is attached
  Attached monitor i: 1 of device 2
  cb: 840
  DeviceName: \\.\DISPLAY2\Monitor1
  DeviceString: Generic PnP Monitor
  StateFlags: 3
  DeviceID: \\?\DISPLAY#AUS24A3#4&1991b1ff&1&UID4194560#{e6f07b5f-ee97-4a90-b076-33f57bf4eaa7}
  DeviceKey: \Registry\Machine\System\CurrentControlSet\Control\Class\{4d36e96e-e325-11ce-bfc1-08002be10318}\0015
monitor is attached
monitor active
EnumDisplayDevices i: 3
cb: 840
DeviceName: \\.\DISPLAY3
DeviceString: NVIDIA GeForce RTX 2070 SUPER
StateFlags: 0
DeviceID: PCI\VEN_10DE&DEV_1E84&SUBSYS_87081043&REV_A1
DeviceKey: \Registry\Machine\System\CurrentControlSet\Control\Video\{09F77703-97E3-11EF-95DE-F072755928E2}\0002
  Attached monitor i: 0 of device 3
  cb: 840
  DeviceName: \\.\DISPLAY3\Monitor0
  DeviceString: Generic PnP Monitor
  StateFlags: 2
  DeviceID: \\?\DISPLAY#GSM5B55#4&1991b1ff&1&UID4194562#{e6f07b5f-ee97-4a90-b076-33f57bf4eaa7}
  DeviceKey: \Registry\Machine\System\CurrentControlSet\Control\Class\{4d36e96e-e325-11ce-bfc1-08002be10318}\0013
monitor is attached
EnumDisplayDevices i: 4
cb: 840
DeviceName: \\.\DISPLAY4
DeviceString: NVIDIA GeForce RTX 2070 SUPER
StateFlags: 0
DeviceID: PCI\VEN_10DE&DEV_1E84&SUBSYS_87081043&REV_A1
DeviceKey: \Registry\Machine\System\CurrentControlSet\Control\Video\{09F77703-97E3-11EF-95DE-F072755928E2}\0003
  Attached monitor i: 0 of device 4
  cb: 840
  DeviceName: \\.\DISPLAY4\Monitor0
  DeviceString: Generic PnP Monitor
  StateFlags: 2
  DeviceID: \\?\DISPLAY#GSM5B55#4&1991b1ff&1&UID4194562#{e6f07b5f-ee97-4a90-b076-33f57bf4eaa7}
  DeviceKey: \Registry\Machine\System\CurrentControlSet\Control\Class\{4d36e96e-e325-11ce-bfc1-08002be10318}\0013
monitor is attached
EnumDisplayMonitors index 0 \\.\DISPLAY1 y: 0 to 1080 x: 0 to 1920
EnumDisplayMonitors index 1 \\.\DISPLAY2 y: 0 to 1080 x: 1920 to 3840
another_commander
Quite Grand Sub-Admiral
Quite Grand Sub-Admiral
Posts: 6916
Joined: Wed Feb 28, 2007 7:54 am

Re: Oolite on HDR Displays

Post by another_commander »

Yes! We have the distinguishing flag for the monitor: DISPLAY_DEVICE_ACTIVE. 5B71 is actrive, 5B55 is not, And we can see it!

Stand by for incoming test Oolite executable please. I think we may have got it this time [crosses fingers].
another_commander
Quite Grand Sub-Admiral
Quite Grand Sub-Admiral
Posts: 6916
Joined: Wed Feb 28, 2007 7:54 am

Re: Oolite on HDR Displays

Post by another_commander »

Commander_X
---- E L I T E ----
---- E L I T E ----
Posts: 705
Joined: Sat Aug 09, 2014 4:16 pm

Re: Oolite on HDR Displays

Post by Commander_X »

another_commander wrote: Tue Jul 29, 2025 5:39 pm
Alas, the dialog still pops up. Latest.log relevant:

Code: Select all

14:01:42.710 [rendering.opengl.shader.support]: Shaders are supported.
14:01:42.739 [searchPaths.dumpAll]: Resource paths: 
    Resources
14:01:42.741 [MSAA.setup]: Multisample anti-aliasing not requested.
14:01:42.972 [shipData.load.begin]: Loading ship data.
14:01:43.284 [gameView.isOutputDisplayHDREnabled]: ----- WARNING: Primary monitor candidate \\.\DISPLAY1\Monitor0 (Generic PnP Monitor \\?\DISPLAY#GSM5B55#4&1991b1ff&1&UID4194562#{e6f07b5f-ee97-4a90-b076-33f57bf4eaa7}) not active.
14:01:43.284 [gameView.isOutputDisplayHDREnabled]: ----- WARNING: Received 0x80070057 while attempting to detect HDR mode using Advanced Color Info 2 API. Retrying detection using legacy API.
14:01:43.284 [unclassified.MyOpenGLView]: Failed at checkpoint #1. monitorDevicePath: \\?\DISPLAY#GSM5B71#4&1991b1ff&1&UID4194565#{e6f07b5f-ee97-4a90-b076-33f57bf4eaa7}, wcsPrimaryDeviceID: OOUnknownDevice
14:01:43.284 [gameView.isOutputDisplayHDREnabled]: ----- WARNING: Received 0x80070057 while attempting to detect HDR mode using Advanced Color Info 2 API. Retrying detection using legacy API.
14:01:43.284 [unclassified.MyOpenGLView]: Failed at checkpoint #1. monitorDevicePath: \\?\DISPLAY#AUS24A3#4&1991b1ff&1&UID4194560#{e6f07b5f-ee97-4a90-b076-33f57bf4eaa7}, wcsPrimaryDeviceID: OOUnknownDevice
14:01:43.284 [gameView.isOutputDisplayHDREnabled]: HDR display output requested - checking availability: NO
14:01:46.724 [display.initGL]: Requested a new surface of 1280 x 720, windowed.
14:01:46.783 [display.initGL]: Created a new surface of 1280 x 720, windowed.
14:01:46.805 [startup.complete]: ========== Loading complete in 6.58 seconds. ==========
14:01:54.159 [exit.context]: Exiting: Exit Game selected on start screen.
14:01:54.162 [gameController.exitApp]: .GNUstepDefaults synchronized.

Closing log at 2025-07-29 14:01:54 -0400.
another_commander
Quite Grand Sub-Admiral
Quite Grand Sub-Admiral
Posts: 6916
Joined: Wed Feb 28, 2007 7:54 am

Re: Oolite on HDR Displays

Post by another_commander »

I think that's my mistake again. You can see that it has successfully recognized that the 5B55 is not an active monitor, though.

Can you try this build please? I changed it to go through each and every monitor of each adapter.

Download: https://drive.google.com/file/d/1y-Dif6 ... sp=sharing
Commander_X
---- E L I T E ----
---- E L I T E ----
Posts: 705
Joined: Sat Aug 09, 2014 4:16 pm

Re: Oolite on HDR Displays

Post by Commander_X »

another_commander wrote: Tue Jul 29, 2025 6:10 pm
I think that's my mistake again. You can see that it has successfully recognized that the 5B55 is not an active monitor, though.

Can you try this build please? I changed it to go through each and every monitor of each adapter.

Download: https://drive.google.com/file/d/1y-Dif6 ... sp=sharing
o7, a_c, no dialog this time. Latest.log excerpt:

Code: Select all

14:11:58.831 [rendering.opengl.shader.support]: Shaders are supported.
14:11:58.859 [searchPaths.dumpAll]: Resource paths: 
    Resources
14:11:58.863 [MSAA.setup]: Multisample anti-aliasing not requested.
14:11:59.002 [shipData.load.begin]: Loading ship data.
14:11:59.383 [unclassified.MyOpenGLView]: Checking device: \\?\DISPLAY#GSM5B55#4&1991b1ff&1&UID4194562#{e6f07b5f-ee97-4a90-b076-33f57bf4eaa7}
14:11:59.383 [gameView.isOutputDisplayHDREnabled]: ----- WARNING: Primary monitor candidate \\.\DISPLAY1\Monitor0 (Generic PnP Monitor \\?\DISPLAY#GSM5B55#4&1991b1ff&1&UID4194562#{e6f07b5f-ee97-4a90-b076-33f57bf4eaa7}) not active.
14:11:59.386 [unclassified.MyOpenGLView]: Checking device: \\?\DISPLAY#GSM5B71#4&1991b1ff&1&UID4194565#{e6f07b5f-ee97-4a90-b076-33f57bf4eaa7}
14:11:59.386 [gameView.isOutputDisplayHDREnabled]: ----- WARNING: Received 0x80070057 while attempting to detect HDR mode using Advanced Color Info 2 API. Retrying detection using legacy API.
14:11:59.386 [unclassified.MyOpenGLView]: Failed at checkpoint #2
14:11:59.386 [gameView.isOutputDisplayHDREnabled]: HDR display output requested - checking availability: YES
14:11:59.387 [display.initGL]: Requested a new surface of 1280 x 720, windowed.
14:11:59.433 [display.initGL]: Created a new surface of 1280 x 720, windowed.
14:11:59.460 [startup.complete]: ========== Loading complete in 1.25 seconds. ==========
14:12:03.929 [exit.context]: Exiting: Exit Game selected on start screen.
14:12:03.932 [gameController.exitApp]: .GNUstepDefaults synchronized.

Closing log at 2025-07-29 14:12:03 -0400.
another_commander
Quite Grand Sub-Admiral
Quite Grand Sub-Admiral
Posts: 6916
Joined: Wed Feb 28, 2007 7:54 am

Re: Oolite on HDR Displays

Post by another_commander »

YEEEEEHHHHAAAA!!!! F***ing finally!!!!!

OK, need to go grab someting to eat, then I'm coming back to commit the fix to github.
another_commander
Quite Grand Sub-Admiral
Quite Grand Sub-Admiral
Posts: 6916
Joined: Wed Feb 28, 2007 7:54 am

Re: Oolite on HDR Displays

Post by another_commander »

New pre-release with the fix is now up: revision 720da94

@Commander_X thanks for your patience and for helping with debugging accross time zones.
Commander_X
---- E L I T E ----
---- E L I T E ----
Posts: 705
Joined: Sat Aug 09, 2014 4:16 pm

Re: Oolite on HDR Displays

Post by Commander_X »

another_commander wrote: Tue Jul 29, 2025 8:06 pm
New pre-release with the fix is now up: revision 720da94

@Commander_X thanks for your patience and for helping with debugging accross time zones.
Glad I could be of help!
Pulled, compiled and I can confirm the dialog doesn't come up :-D
Post Reply