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

Don't simplify unless requested #1185

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open

Conversation

elalish
Copy link
Owner

@elalish elalish commented Mar 9, 2025

Fixes #1138 - really that thread, while interesting, has grown way too long and gone on too many tangents. Some has already been fixed, this fixes some more - please make separate issues for whatever's left.

Now that #1147 has landed which makes the Boolean only decimate the intersected parts of meshes, this PR finishes the job by removing our auto-decimation from the rest of our functions, so users can just call it manually if they want through Simplify. I've also deprecated the cleanupTriangles option, since it's effectively always false now. We're still collapsing degenerate triangles and fixing topology at the epsilon level, but not touching colinear edges, coplanar faces, or anything that's only within tolerance. @stephomi, @starseeker, @howardt I believe you all may have asked for things along this line at various points, so it would be great to have some early eyes on this and get feedback.

Good new / bad news is this improved our testing and thus found that Simplify doesn't handle properties correctly at all. It looks like I now need to add a significant refactor here to fix that, but on the plus side I think I can remove our CreateProperties function entirely, which has gone through quite a bit of optimization due to slowing things down a lot in the past. I think I have a cleaner way now.

@elalish elalish self-assigned this Mar 9, 2025
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.

Improve performance of MeshGL -> Manifold construction
1 participant