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

Enable 3D operation for more drivers #1314

Merged
merged 1 commit into from
Nov 24, 2024

Conversation

swiftgeek
Copy link
Contributor

@swiftgeek swiftgeek commented Feb 10, 2023

pyglet documentation (shadow_window)

Fixes/works around #1313
May need testing whether it negatively affects performance with other drivers (in significant way)

Tested with Intel mesa classic crocus, llvmpipe and softpipe, under kde x11 and weston with xwayland enabled.

@rockstorm101
Copy link
Collaborator

Hi @DivingDuck, I've tested this and it does not seem to affect the 3D display on my machine though my specs are similar to @swiftgeek's. Could you have a look and see if it negatively affects Windows?

@DivingDuck
Copy link
Collaborator

DivingDuck commented Apr 3, 2023

Hi @rockstorm101, I've tested it as well with running two Fusion360 models, one is very complex (>4k bodies) and one is a more simple construction (145 bodies). I can't really say if it slows down the performance as I see Fusion sometimes slows a bit down and sometimes not. For the complex model it feels like it slows down a bit more. That tends me to think it is more a system related performance thing on my system, but who knows.

Maybe adding a toggle switch for this in options setup is a appropriate solution for dealing with it as the documentation says:

shadow_window

    By default, pyglet creates a hidden window with a GL context when pyglet.gl is imported. This 
allows resources to be loaded before the application window is created, and permits GL objects to 
be shared between windows even after they’ve been closed. You can disable the creation of the 
shadow window by setting this option to False.

    Some OpenGL driver implementations may not support shared OpenGL contexts and may 
require disabling the shadow window (and all resources must be loaded after the window using 
them was created). Recommended for advanced developers only.
    New in version 1.1.

https://pyglet.readthedocs.io/en/latest/programming_guide/options.html#module-pyglet

@swiftgeek
Copy link
Contributor Author

I was thinking more about significant difference like 1.5/2x slower (or more), and not something that is hard to measure, since 3D is only is used for preview / tracking progress.

Copy link
Collaborator

@DivingDuck DivingDuck left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sorry for my late approving. I somehow had forgot this PR. I did a quick local test again with my actual branch and everything looks good on my side.

This will hopefully also help for issue #1390

@swiftgeek, thanks for your PR

@rockstorm101, guess we should merge this one.

@rockstorm101
Copy link
Collaborator

rockstorm101 commented Nov 24, 2024

Well, I forgot about this PR as well. Apologies @swiftgeek. I recall not merging this back then out of fear of breaking something on other platforms, but it's been explained it should be safe so let's do it.

I did a quick local test again with my actual branch and everything looks good on my side.

Thanks for testing again by the way!

@rockstorm101 rockstorm101 merged commit 6608ff8 into kliment:master Nov 24, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants