-
-
Notifications
You must be signed in to change notification settings - Fork 317
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
Fix clip state corruption #4157
Conversation
Compile Times benchmarkNote, that these numbers may fluctuate on the CI servers, so take them with a grain of salt. All benchmark results are based on the mean time and negative percent mean faster than the base branch. Note, that GLMakie + WGLMakie run on an emulated GPU, so the runtime benchmark is much slower. Results are from running: using_time = @ctime using Backend
# Compile time
create_time = @ctime fig = scatter(1:4; color=1:4, colormap=:turbo, markersize=20, visible=true)
display_time = @ctime Makie.colorbuffer(display(fig))
# Runtime
create_time = @benchmark fig = scatter(1:4; color=1:4, colormap=:turbo, markersize=20, visible=true)
display_time = @benchmark Makie.colorbuffer(fig)
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I can't speak to the OpenGL stuff, this looks good to me after trying it locally though.
Co-authored-by: Anshul Singhvi <[email protected]>
Description
Re-enables the
glDisable(GL_CLIP_DISTANCE<N>)
lines without which OpenGL can get into a state where clipping is enabled but the values are not set. In that state plots will randomly get clipped.I got to this state in #4131 with some tests that include multiple Axis3, each setting 6 clip planes via ax.scene.theme.clip_planes. I don't think I managed to reproduce it by just setting one clip plane in a plot.
In #3958 I had some trouble with this code and had it disabled because of that. I'm not sure what exactly the problem was, but now I have no issues with it on my Laptop or PC.
Type of change
Checklist