-
Notifications
You must be signed in to change notification settings - Fork 43
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
Right eye flickers when Viewport#transparent_bg
is enabled after XR_SESSION_STATE_READY
state
#139
Comments
@BastiaanOlij I have only been able to test on the Quest but this could also be an issue on other platforms. |
Strange, this is caused by Godot forgetting that we're using external textures and recreating the buffers on the Godot side. It's the same issue we had when you resized the preview window on desktop. That was fixed but possibly I only applied the fix for resizing, not when changing transparency. I'm assuming this was tested on the latest 3.x ? |
Also an issue for #101 |
It was tested against 3.4.stable. I can double-check against latest 3.x. |
Found the issue, I think something changed in the cleanup code of textures at some point. As we create a wrapper Texture object around our OpenGL texture supplied by the plugin, on changing the transparency setting this texture object is destroyed (as we recreate a new render target with proper settings for transparency) and our current right eye texture along side it. Hence the flicker as one texture in the texture chain is now missing. This fixes it: godotengine/godot#56148 |
@m4gr3d let me know if the fix I did fixes this for you as well, if so we can close this:) |
@BastiaanOlij Yep, that fixed the issue! |
Repro steps:
_get_xr_viewport().transparent_bg = true
either to_on_openxr_session_begun
,_on_openxr_visible_state
or_on_openxr_focused_state
.transparent_bg
is set ininitialise
.The text was updated successfully, but these errors were encountered: