Page MenuHomeWildfire Games

Allows to override GL version for SDL
ClosedPublic

Authored by vladislavbelov on Jan 21 2021, 10:37 PM.

Details

Reviewers
None
Group Reviewers
Restricted Owners Package(Owns No Changed Paths)
Commits
rP24768: Allows to override GL version for SDL.
Summary

Helps debugging including RenderDoc/apitrace captures.

Test Plan
  1. Apply the patch and compile the game
  2. Check different versions and make sure RenderDoc captures in case of 3.0 with compatibility

Diff Detail

Repository
rP 0 A.D. Public Repository
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

vladislavbelov edited the test plan for this revision. (Show Details)Jan 21 2021, 10:39 PM
Stan added a subscriber: Stan.Jan 21 2021, 10:47 PM

So this is interesting and practical. By setting it to true I can hook up renderdoc, however If I put the mode in core instead of compatibility I get a black screen.

binaries/data/config/default.cfg
58 ↗(On Diff #15612)

Maybe you could use int to avoid storing strings

source/ps/VideoMode.cpp
230 ↗(On Diff #15612)

Might need to include CStr

In D3448#152524, @Stan wrote:

So this is interesting and practical. By setting it to true I can hook up renderdoc, however If I put the mode in core instead of compatibility I get a black screen.

That's expected, since we just dropped FFP, but 3.3 has nothing about FFP and some related functions.

binaries/data/config/default.cfg
58 ↗(On Diff #15612)

Only for debugging, so it doesn't matter here.

vladislavbelov marked an inline comment as done.
Stan added a comment.Jan 21 2021, 11:05 PM

Other than that it looks good and will be a nice A25 feature.

Build is green

builderr-debug-macos.txt
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: ../../../binaries/system/libengine_dbg.a(precompiled.o) has no symbols
ld: warning: text-based stub file /System/Library/Frameworks//CoreAudio.framework/CoreAudio.tbd and library file /System/Library/Frameworks//CoreAudio.framework/CoreAudio are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//AudioToolbox.framework/AudioToolbox.tbd and library file /System/Library/Frameworks//AudioToolbox.framework/AudioToolbox are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//ForceFeedback.framework/ForceFeedback.tbd and library file /System/Library/Frameworks//ForceFeedback.framework/ForceFeedback are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//CoreVideo.framework/Cor

See https://jenkins.wildfiregames.com/job/macos-differential/3013/display/redirect for more details.

Build is green

builderr-debug-macos.txt
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: ../../../binaries/system/libengine_dbg.a(precompiled.o) has no symbols
ld: warning: text-based stub file /System/Library/Frameworks//CoreAudio.framework/CoreAudio.tbd and library file /System/Library/Frameworks//CoreAudio.framework/CoreAudio are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//AudioToolbox.framework/AudioToolbox.tbd and library file /System/Library/Frameworks//AudioToolbox.framework/AudioToolbox are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//ForceFeedback.framework/ForceFeedback.tbd and library file /System/Library/Frameworks//ForceFeedback.framework/ForceFeedback are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//CoreVideo.framework/Cor

See https://jenkins.wildfiregames.com/job/macos-differential/3014/display/redirect for more details.

vladislavbelov requested review of this revision.Jan 21 2021, 11:51 PM

Just FYI, but you might already now: on Mac OS, "compatibility" is always GL 2.1, and "core" is whatever is supported, generally 4.x something. Might be worth adding that as a comment / ifdef somewhere

This revision was not accepted when it landed; it landed in state Needs Review.Jan 22 2021, 8:40 PM
This revision was automatically updated to reflect the committed changes.