fix: apply mixed-filament gradient ratios across model height - #12008
Open
mvanhorn wants to merge 1 commit into
Open
fix: apply mixed-filament gradient ratios across model height#12008mvanhorn wants to merge 1 commit into
mvanhorn wants to merge 1 commit into
Conversation
4 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
In
src/libslic3r/GCode/ToolOrdering.cpp, derive the effective sublayer-resolution mode from either the existing mixed-color sublayer print option or the presence of an enabled, valid two-component gradient slot. This makes Gradient Effect honor its height-dependent range or custom curve even when the independent mixed-color sublayer setting remains at its default, and it covers newly created as well as loaded project configurations without coupling slicer correctness to a GUI side effect. Keep non-gradient mixed filaments on the current deficit round-robin path when the print option is off, and retain the existing first-layer adhesion behavior and component-order handling.Test plan
enable_mixed_color_sublayer=false; after slicing/tool ordering, layers above the first contain mixed sublayer groups whose component heights change from the lower layers to the upper layers according to the gradient direction.enable_mixed_color_sublayer=false; each layer continues to resolve to one physical component through deficit round-robin and does not gain a mixed sublayer group.Why
Mixed filaments with Gradient Effect enabled are sliced using an approximately constant alternating-layer mix instead of following the configured ratio curve from the bottom to the top of the model. The report provides concrete reproduction steps, and three additional users confirm the behavior on current Bambu Studio versions across macOS and Windows. In
ToolOrdering::resolve_mixed_filaments, gradient metadata is parsed regardless of the print setting, but gradient ratios are used only inside theenable_mixed_color_sublayerbranch; that setting defaults to false, leaving the fixed-layer deficit round-robin path to use the static mix ratios. The issue has no assignee, claim, competing PR, or prior closed PR attempt in the supplied bundle.Closes #11851