mirror of
https://github.com/OrcaSlicer/OrcaSlicer.git
synced 2026-10-10 17:21:10 +00:00
Brings in 54 upstream commits, the bulk of them the BambuStudio-ported color mixing / mixed filament subsystem (#15347) plus its follow-ups, along with the Assimp-backed colored OBJ import, warning-policy build changes, and assorted profile and localization updates. Two conflicts, both "each side added at the same point", resolved by keeping both: - Print::validate() -- our IMEX multi-color block and upstream's new gradient mixed filament warning were inserted at the same spot after the empty extruders check. They test unrelated conditions, so both are kept, each with its own closing brace. - tests/libslic3r/test_3mf.cpp -- our three IMEX per-plate round-trip scenarios and upstream's mixed-filament round-trip scenario both append to the end of the file, and each side added one include. All four scenarios and both includes are kept. Everything else merged cleanly, including GCode.cpp, ToolOrdering.cpp, PartPlate.cpp and PrintConfig.cpp. Upstream left the is_extruder_used block untouched, so the IMEX supplement still applies, and estimate_wipe_tower_polygon is unchanged, so the prime tower hull work is unaffected. Not addressed here, and worth its own change: a mixed filament is a virtual slot that no nozzle carries, while physical_extruder_map routes logical slots to physical heads. Print::extruders() lists mixed slots under their own id whereas tool_ordering.all_extruders() lists them post-expansion, so the IMEX pem lookups have no defined answer for a mixed slot. Upstream's own guards reject a mixed filament where a physical slot is required; IMEX likely wants the same. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>