Skip to content
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

Add OpenGL state tracking #255

Merged
merged 2 commits into from
Mar 2, 2025
Merged

Add OpenGL state tracking #255

merged 2 commits into from
Mar 2, 2025

Conversation

shartte
Copy link
Contributor

@shartte shartte commented Mar 2, 2025

EarlyDisplay has to update its loading screen framebuffer interleaved with OpenGL rendering done by Vanilla (this happens during the cross-fade between the two).
Vanilla in 1.21.5 starts aggressively caching OpenGL state in various places, making it difficult if the external rendering by EarlyDisplay leaves the context in a state different from when it started. To fix this, I introduced a state tracker that is able to initialize itself from the current OpenGL pipeline state to restore it when EarlyDisplay is done.

@neoforged-pr-publishing
Copy link

neoforged-pr-publishing bot commented Mar 2, 2025

  • Publish PR to GitHub Packages

Last commit published: dbe87772142f25b10b547c7e0d2890b42a73c9a7.

PR Publishing

The artifacts published by this PR:

Repository Declaration

In order to use the artifacts published by the PR, add the following repository to your buildscript:

repositories {
    maven {
        name 'Maven for PR #255' // https://github.com/neoforged/FancyModLoader/pull/255
        url 'https://prmaven.neoforged.net/FancyModLoader/pr255'
        content {
            includeModule('net.neoforged.fancymodloader', 'earlydisplay')
            includeModule('net.neoforged.fancymodloader', 'junit-fml')
            includeModule('net.neoforged.fancymodloader', 'loader')
            includeModule('net.neoforged.fancymodloader', 'tests')
        }
    }
}

@shartte shartte force-pushed the gl-state-tracking branch from 5223a6d to ad781ea Compare March 2, 2025 14:23
@shartte shartte marked this pull request as ready for review March 2, 2025 16:19
@marchermans marchermans merged commit 21f4b03 into main Mar 2, 2025
4 checks passed
@neoforged-releases
Copy link

🚀 This PR has been released as FancyModLoader version 6.0.12.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants