Fix banding and discoloration issue in 3D scene #629
Closed
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
🦟 Bug fix
Summary
The MinimalScene uses the
GammaAdjust
effect for gamma correction otherwise the scene will appear darker than it should when using ogre2 + OpenGL. However, it was found that caused caused banding and discoloration issues in the 3D scene, see screenshots here. This PR removes theGammaAdjust
QML effect and instead applies a workaround in the OpenGL RHI to convert the input ogre2 render texture from the sRGB format to linear RGB format before passing it to Qt. The scene now display the correct colors but without banding issues.Note this may not be necessary in Qt 6 as I see that there is a new class and API to set the flags of its RHI texture to sRGB color space
Checklist
codecheck
passed (See contributing)Note to maintainers: Remember to use Squash-Merge and edit the commit message to match the pull request summary while retaining
Signed-off-by
messages.