Crashes when rotating with union brush on Apple Silicon #104179

Closed
opened 2023-01-27 14:47:20 +01:00 by James Gille · 5 comments

System Information
Operating system: macOS-13.2-arm64-arm-64bit 64 Bits
Graphics card: Apple M2 Max Apple 4.1 Metal - 83

Blender Version
Broken: version: 3.4.1, branch: blender-v3.4-release, commit date: 2022-12-20 08:50, hash: ef9ca44dee
Worked: (newest version of Blender that worked as expected)

Short description of error
When you try to rotate a mesh which has a union brush from bool tool in place, blender crashes, 100% of the time. It may take a second or so of rotation.

Exact steps for others to reproduce the error
Rotate the cube named "rotate me" in the file. It make take a few seconds of rotation. If you want to create you own file, add two meshes, create a union brush with one of them. Try to rotate the result.
union brush rotation crash.blend

**System Information** Operating system: macOS-13.2-arm64-arm-64bit 64 Bits Graphics card: Apple M2 Max Apple 4.1 Metal - 83 **Blender Version** Broken: version: 3.4.1, branch: blender-v3.4-release, commit date: 2022-12-20 08:50, hash: `ef9ca44dee` Worked: (newest version of Blender that worked as expected) **Short description of error** When you try to rotate a mesh which has a union brush from bool tool in place, blender crashes, 100% of the time. It may take a second or so of rotation. **Exact steps for others to reproduce the error** Rotate the cube named "rotate me" in the file. It make take a few seconds of rotation. If you want to create you own file, add two meshes, create a union brush with one of them. Try to rotate the result. [union brush rotation crash.blend](https://archive.blender.org/developer/F14203620/union_brush_rotation_crash.blend)
Author

Added subscriber: @gwenhidwy

Added subscriber: @gwenhidwy
Member

Added subscribers: @mano-wii, @PratikPB2123

Added subscribers: @mano-wii, @PratikPB2123
Member

@mano-wii hi, can you check?
I'm unable to repro crash

@mano-wii hi, can you check? I'm unable to repro crash

Same as #103423 (Crash with boolean modifier exact mode depending on face orientation (regression from 3.3.1 to 3.3.2)).
Blender 3.4.1 doesn't have the fix, (I'm not sure if it ever will), you have to use version 3.5 or another version.
Please try the latest daily build: https://builder.blender.org/download/

Thread 0::  Dispatch queue: com.apple.main-thread
0   Blender                       	       0x10b5ddea4 __gmpn_sqr_diag_addlsh1 + 132
1   Blender                       	       0x10b5b4834 __gmpn_sqr_basecase + 380
2   Blender                       	       0x10b5b42d8 __gmpn_sqr + 96
3   Blender                       	       0x10b5a62e0 __gmpz_mul + 1288
4   Blender                       	       0x10b5a8efc __gmpq_mul + 80
5   Blender                       	       0x10b53c2a8 __gmp_expr<__mpq_struct [1], __gmp_binary_expr<__gmp_expr<__mpq_struct [1], __gmp_binary_expr<__gmp_expr<__mpq_struct [1], __mpq_struct [1]>, __gmp_expr<__mpq_struct [1], __mpq_struct [1]>, __gmp_binary_multiplies> >, __gmp_expr<__mpq_struct [1], __gmp_binary_expr<__gmp_expr<__mpq_struct [1], __mpq_struct [1]>, __gmp_expr<__mpq_struct [1], __mpq_struct [1]>, __gmp_binary_multiplies> >, __gmp_binary_plus> >::eval(__mpq_struct*) const + 68
6   Blender                       	       0x10b4d6da4 blender::incircle(blender::vec_base<__gmp_expr<__mpq_struct [1], __mpq_struct [1]>, 2> const&, blender::vec_base<__gmp_expr<__mpq_struct [1], __mpq_struct [1]>, 2> const&, blender::vec_base<__gmp_expr<__mpq_struct [1], __mpq_struct [1]>, 2> const&, blender::vec_base<__gmp_expr<__mpq_struct [1], __mpq_struct [1]>, 2> const&) + 284
7   Blender                       	       0x10b4b27fc void blender::meshintersect::dc_tri<__gmp_expr<__mpq_struct [1], __mpq_struct [1]> >(blender::meshintersect::CDTArrangement<__gmp_expr<__mpq_struct [1], __mpq_struct [1]> >*, blender::Array<blender::meshintersect::SiteInfo<__gmp_expr<__mpq_struct [1], __mpq_struct [1]> >, blender::default_inline_buffer_capacity(unsigned long)(sizeof (blender::meshintersect::SiteInfo<__gmp_expr<__mpq_struct [1], __mpq_struct [1]> >)), blender::GuardedAllocator>&, int, int, blender::meshintersect::SymEdge<__gmp_expr<__mpq_struct [1], __mpq_struct [1]> >**, blender::meshintersect::SymEdge<__gmp_expr<__mpq_struct [1], __mpq_struct [1]> >**) + 1176
8   Blender                       	       0x10b4b24d0 void blender::meshintersect::dc_tri<__gmp_expr<__mpq_struct [1], __mpq_struct [1]> >(blender::meshintersect::CDTArrangement<__gmp_expr<__mpq_struct [1], __mpq_struct [1]> >*, blender::Array<blender::meshintersect::SiteInfo<__gmp_expr<__mpq_struct [1], __mpq_struct [1]> >, blender::default_inline_buffer_capacity(unsigned long)(sizeof (blender::meshintersect::SiteInfo<__gmp_expr<__mpq_struct [1], __mpq_struct [1]> >)), blender::GuardedAllocator>&, int, int, blender::meshintersect::SymEdge<__gmp_expr<__mpq_struct [1], __mpq_struct [1]> >**, blender::meshintersect::SymEdge<__gmp_expr<__mpq_struct [1], __mpq_struct [1]> >**) + 364
9   Blender                       	       0x10b4b009c void blender::meshintersect::initial_triangulation<__gmp_expr<__mpq_struct [1], __mpq_struct [1]> >(blender::meshintersect::CDTArrangement<__gmp_expr<__mpq_struct [1], __mpq_struct [1]> >*) + 532
10  Blender                       	       0x10b4afc20 blender::meshintersect::CDT_result<__gmp_expr<__mpq_struct [1], __mpq_struct [1]> > blender::meshintersect::delaunay_calc<__gmp_expr<__mpq_struct [1], __mpq_struct [1]> >(blender::meshintersect::CDT_input<__gmp_expr<__mpq_struct [1], __mpq_struct [1]> > const&, CDT_output_type) + 156
11  Blender                       	       0x10b53a4b4 blender::meshintersect::do_cdt(blender::meshintersect::CDT_data&) + 828
12  Blender                       	       0x10b539aac blender::meshintersect::calc_subdivided_non_cluster_tris(blender::Array<blender::meshintersect::IMesh, 0ll, blender::GuardedAllocator>&, blender::meshintersect::IMesh const&, blender::Map<std::__1::pair<int, int>, blender::meshintersect::ITT_value, 0ll, blender::PythonProbingStrategy<1ull, false>, blender::DefaultHash<std::__1::pair<int, int> >, blender::DefaultEquality, blender::SimpleMapSlot<std::__1::pair<int, int>, blender::meshintersect::ITT_value>, blender::GuardedAllocator> const&, blender::meshintersect::CoplanarClusterInfo const&, blender::meshintersect::TriOverlaps const&, blender::meshintersect::IMeshArena*)::$_2::operator()(blender::IndexRange) const + 1568
13  Blender                       	       0x10b52fa98 blender::meshintersect::trimesh_nary_intersect(blender::meshintersect::IMesh const&, int, std::__1::function<int (int)>, bool, blender::meshintersect::IMeshArena*) + 7364
14  Blender                       	       0x10b50de04 blender::meshintersect::boolean_trimesh(blender::meshintersect::IMesh&, blender::meshintersect::BoolOpType, int, std::__1::function<int (int)>, bool, bool, blender::meshintersect::IMeshArena*) + 256
15  Blender                       	       0x10b51f0f0 blender::meshintersect::boolean_mesh(blender::meshintersect::IMesh&, blender::meshintersect::BoolOpType, int, std::__1::function<int (int)>, bool, bool, blender::meshintersect::IMesh*, blender::meshintersect::IMeshArena*) + 436
16  Blender                       	       0x10306055c blender::meshintersect::direct_mesh_boolean(blender::Span<Mesh const*>, blender::Span<blender::float4x4 const*>, blender::float4x4 const&, blender::Span<blender::Array<short, 4ll, blender::GuardedAllocator> >, bool, bool, int, blender::Vector<int, 4ll, blender::GuardedAllocator>*) + 2948
17  Blender                       	       0x10360f78c modifyMesh(ModifierData*, ModifierEvalContext const*, Mesh*) + 2496
18  Blender                       	       0x102e694f4 mesh_calc_modifiers(Depsgraph*, Scene const*, Object*, bool, bool, CustomData_MeshMasks const*, bool, bool, Mesh**, Mesh**, GeometrySet**) + 2252
19  Blender                       	       0x102e6834c mesh_build_data(Depsgraph*, Scene const*, Object*, CustomData_MeshMasks const*, bool) + 84
20  Blender                       	       0x102e677d4 makeDerivedMesh + 168
21  Blender                       	       0x1030e5df8 BKE_object_handle_data_update + 392
22  Blender                       	       0x1030e61e0 BKE_object_eval_uber_data + 64
23  Blender                       	       0x1034f3a50 blender::deg::(anonymous namespace)::deg_task_run_func(TaskPool*, void*) + 140
24  Blender                       	       0x10b57d788 tbb::internal::function_task<Task>::execute() + 24
25  Blender                       	       0x1033dc248 tbb::internal::custom_scheduler<tbb::internal::IntelSchedulerTraits>::process_bypass_loop(tbb::internal::context_guard_helper<false>&, tbb::task*, long) + 440
26  Blender                       	       0x1033db8e4 tbb::internal::custom_scheduler<tbb::internal::IntelSchedulerTraits>::local_wait_for_all(tbb::task&, tbb::task*) + 184
27  Blender                       	       0x104c080f4 tbb::internal::task_group_base::wait() + 40
28  Blender                       	       0x10b57d914 BLI_task_pool_work_and_wait + 384
29  Blender                       	       0x1034f358c blender::deg::deg_evaluate_on_refresh(blender::deg::Depsgraph*) + 308
30  Blender                       	       0x103132148 scene_graph_update_tagged(Depsgraph*, Main*, bool) + 364
31  Blender                       	       0x1033e5d98 wm_event_do_depsgraph + 160
32  Blender                       	       0x1033e5e5c wm_event_do_refresh_wm_and_depsgraph + 44
33  Blender                       	       0x1033e6508 wm_event_do_notifiers + 1596
34  Blender                       	       0x1033e0840 WM_main + 44
35  Blender                       	       0x102e58d0c main + 872
36  dyld                          	       0x183667e50 start + 2544
Same as #103423 (Crash with boolean modifier exact mode depending on face orientation (regression from 3.3.1 to 3.3.2)). Blender 3.4.1 doesn't have the fix, (I'm not sure if it ever will), you have to use version 3.5 or another version. Please try the latest daily build: https://builder.blender.org/download/ ```lines=20 Thread 0:: Dispatch queue: com.apple.main-thread 0 Blender 0x10b5ddea4 __gmpn_sqr_diag_addlsh1 + 132 1 Blender 0x10b5b4834 __gmpn_sqr_basecase + 380 2 Blender 0x10b5b42d8 __gmpn_sqr + 96 3 Blender 0x10b5a62e0 __gmpz_mul + 1288 4 Blender 0x10b5a8efc __gmpq_mul + 80 5 Blender 0x10b53c2a8 __gmp_expr<__mpq_struct [1], __gmp_binary_expr<__gmp_expr<__mpq_struct [1], __gmp_binary_expr<__gmp_expr<__mpq_struct [1], __mpq_struct [1]>, __gmp_expr<__mpq_struct [1], __mpq_struct [1]>, __gmp_binary_multiplies> >, __gmp_expr<__mpq_struct [1], __gmp_binary_expr<__gmp_expr<__mpq_struct [1], __mpq_struct [1]>, __gmp_expr<__mpq_struct [1], __mpq_struct [1]>, __gmp_binary_multiplies> >, __gmp_binary_plus> >::eval(__mpq_struct*) const + 68 6 Blender 0x10b4d6da4 blender::incircle(blender::vec_base<__gmp_expr<__mpq_struct [1], __mpq_struct [1]>, 2> const&, blender::vec_base<__gmp_expr<__mpq_struct [1], __mpq_struct [1]>, 2> const&, blender::vec_base<__gmp_expr<__mpq_struct [1], __mpq_struct [1]>, 2> const&, blender::vec_base<__gmp_expr<__mpq_struct [1], __mpq_struct [1]>, 2> const&) + 284 7 Blender 0x10b4b27fc void blender::meshintersect::dc_tri<__gmp_expr<__mpq_struct [1], __mpq_struct [1]> >(blender::meshintersect::CDTArrangement<__gmp_expr<__mpq_struct [1], __mpq_struct [1]> >*, blender::Array<blender::meshintersect::SiteInfo<__gmp_expr<__mpq_struct [1], __mpq_struct [1]> >, blender::default_inline_buffer_capacity(unsigned long)(sizeof (blender::meshintersect::SiteInfo<__gmp_expr<__mpq_struct [1], __mpq_struct [1]> >)), blender::GuardedAllocator>&, int, int, blender::meshintersect::SymEdge<__gmp_expr<__mpq_struct [1], __mpq_struct [1]> >**, blender::meshintersect::SymEdge<__gmp_expr<__mpq_struct [1], __mpq_struct [1]> >**) + 1176 8 Blender 0x10b4b24d0 void blender::meshintersect::dc_tri<__gmp_expr<__mpq_struct [1], __mpq_struct [1]> >(blender::meshintersect::CDTArrangement<__gmp_expr<__mpq_struct [1], __mpq_struct [1]> >*, blender::Array<blender::meshintersect::SiteInfo<__gmp_expr<__mpq_struct [1], __mpq_struct [1]> >, blender::default_inline_buffer_capacity(unsigned long)(sizeof (blender::meshintersect::SiteInfo<__gmp_expr<__mpq_struct [1], __mpq_struct [1]> >)), blender::GuardedAllocator>&, int, int, blender::meshintersect::SymEdge<__gmp_expr<__mpq_struct [1], __mpq_struct [1]> >**, blender::meshintersect::SymEdge<__gmp_expr<__mpq_struct [1], __mpq_struct [1]> >**) + 364 9 Blender 0x10b4b009c void blender::meshintersect::initial_triangulation<__gmp_expr<__mpq_struct [1], __mpq_struct [1]> >(blender::meshintersect::CDTArrangement<__gmp_expr<__mpq_struct [1], __mpq_struct [1]> >*) + 532 10 Blender 0x10b4afc20 blender::meshintersect::CDT_result<__gmp_expr<__mpq_struct [1], __mpq_struct [1]> > blender::meshintersect::delaunay_calc<__gmp_expr<__mpq_struct [1], __mpq_struct [1]> >(blender::meshintersect::CDT_input<__gmp_expr<__mpq_struct [1], __mpq_struct [1]> > const&, CDT_output_type) + 156 11 Blender 0x10b53a4b4 blender::meshintersect::do_cdt(blender::meshintersect::CDT_data&) + 828 12 Blender 0x10b539aac blender::meshintersect::calc_subdivided_non_cluster_tris(blender::Array<blender::meshintersect::IMesh, 0ll, blender::GuardedAllocator>&, blender::meshintersect::IMesh const&, blender::Map<std::__1::pair<int, int>, blender::meshintersect::ITT_value, 0ll, blender::PythonProbingStrategy<1ull, false>, blender::DefaultHash<std::__1::pair<int, int> >, blender::DefaultEquality, blender::SimpleMapSlot<std::__1::pair<int, int>, blender::meshintersect::ITT_value>, blender::GuardedAllocator> const&, blender::meshintersect::CoplanarClusterInfo const&, blender::meshintersect::TriOverlaps const&, blender::meshintersect::IMeshArena*)::$_2::operator()(blender::IndexRange) const + 1568 13 Blender 0x10b52fa98 blender::meshintersect::trimesh_nary_intersect(blender::meshintersect::IMesh const&, int, std::__1::function<int (int)>, bool, blender::meshintersect::IMeshArena*) + 7364 14 Blender 0x10b50de04 blender::meshintersect::boolean_trimesh(blender::meshintersect::IMesh&, blender::meshintersect::BoolOpType, int, std::__1::function<int (int)>, bool, bool, blender::meshintersect::IMeshArena*) + 256 15 Blender 0x10b51f0f0 blender::meshintersect::boolean_mesh(blender::meshintersect::IMesh&, blender::meshintersect::BoolOpType, int, std::__1::function<int (int)>, bool, bool, blender::meshintersect::IMesh*, blender::meshintersect::IMeshArena*) + 436 16 Blender 0x10306055c blender::meshintersect::direct_mesh_boolean(blender::Span<Mesh const*>, blender::Span<blender::float4x4 const*>, blender::float4x4 const&, blender::Span<blender::Array<short, 4ll, blender::GuardedAllocator> >, bool, bool, int, blender::Vector<int, 4ll, blender::GuardedAllocator>*) + 2948 17 Blender 0x10360f78c modifyMesh(ModifierData*, ModifierEvalContext const*, Mesh*) + 2496 18 Blender 0x102e694f4 mesh_calc_modifiers(Depsgraph*, Scene const*, Object*, bool, bool, CustomData_MeshMasks const*, bool, bool, Mesh**, Mesh**, GeometrySet**) + 2252 19 Blender 0x102e6834c mesh_build_data(Depsgraph*, Scene const*, Object*, CustomData_MeshMasks const*, bool) + 84 20 Blender 0x102e677d4 makeDerivedMesh + 168 21 Blender 0x1030e5df8 BKE_object_handle_data_update + 392 22 Blender 0x1030e61e0 BKE_object_eval_uber_data + 64 23 Blender 0x1034f3a50 blender::deg::(anonymous namespace)::deg_task_run_func(TaskPool*, void*) + 140 24 Blender 0x10b57d788 tbb::internal::function_task<Task>::execute() + 24 25 Blender 0x1033dc248 tbb::internal::custom_scheduler<tbb::internal::IntelSchedulerTraits>::process_bypass_loop(tbb::internal::context_guard_helper<false>&, tbb::task*, long) + 440 26 Blender 0x1033db8e4 tbb::internal::custom_scheduler<tbb::internal::IntelSchedulerTraits>::local_wait_for_all(tbb::task&, tbb::task*) + 184 27 Blender 0x104c080f4 tbb::internal::task_group_base::wait() + 40 28 Blender 0x10b57d914 BLI_task_pool_work_and_wait + 384 29 Blender 0x1034f358c blender::deg::deg_evaluate_on_refresh(blender::deg::Depsgraph*) + 308 30 Blender 0x103132148 scene_graph_update_tagged(Depsgraph*, Main*, bool) + 364 31 Blender 0x1033e5d98 wm_event_do_depsgraph + 160 32 Blender 0x1033e5e5c wm_event_do_refresh_wm_and_depsgraph + 44 33 Blender 0x1033e6508 wm_event_do_notifiers + 1596 34 Blender 0x1033e0840 WM_main + 44 35 Blender 0x102e58d0c main + 872 36 dyld 0x183667e50 start + 2544 ```

Closed as duplicate of #103423

Closed as duplicate of #103423
Sign in to join this conversation.
No Label
Interest
Alembic
Interest
Animation & Rigging
Interest
Asset Browser
Interest
Asset Browser Project Overview
Interest
Audio
Interest
Automated Testing
Interest
Blender Asset Bundle
Interest
BlendFile
Interest
Collada
Interest
Compatibility
Interest
Compositing
Interest
Core
Interest
Cycles
Interest
Dependency Graph
Interest
Development Management
Interest
EEVEE
Interest
EEVEE & Viewport
Interest
Freestyle
Interest
Geometry Nodes
Interest
Grease Pencil
Interest
ID Management
Interest
Images & Movies
Interest
Import Export
Interest
Line Art
Interest
Masking
Interest
Metal
Interest
Modeling
Interest
Modifiers
Interest
Motion Tracking
Interest
Nodes & Physics
Interest
OpenGL
Interest
Overlay
Interest
Overrides
Interest
Performance
Interest
Physics
Interest
Pipeline, Assets & IO
Interest
Platforms, Builds & Tests
Interest
Python API
Interest
Render & Cycles
Interest
Render Pipeline
Interest
Sculpt, Paint & Texture
Interest
Text Editor
Interest
Translations
Interest
Triaging
Interest
Undo
Interest
USD
Interest
User Interface
Interest
UV Editing
Interest
VFX & Video
Interest
Video Sequencer
Interest
Virtual Reality
Interest
Vulkan
Interest
Wayland
Interest
Workbench
Interest: X11
Legacy
Blender 2.8 Project
Legacy
Milestone 1: Basic, Local Asset Browser
Legacy
OpenGL Error
Meta
Good First Issue
Meta
Papercut
Meta
Retrospective
Meta
Security
Module
Animation & Rigging
Module
Core
Module
Development Management
Module
EEVEE & Viewport
Module
Grease Pencil
Module
Modeling
Module
Nodes & Physics
Module
Pipeline, Assets & IO
Module
Platforms, Builds & Tests
Module
Python API
Module
Render & Cycles
Module
Sculpt, Paint & Texture
Module
Triaging
Module
User Interface
Module
VFX & Video
Platform
FreeBSD
Platform
Linux
Platform
macOS
Platform
Windows
Priority
High
Priority
Low
Priority
Normal
Priority
Unbreak Now!
Status
Archived
Status
Confirmed
Status
Duplicate
Status
Needs Info from Developers
Status
Needs Information from User
Status
Needs Triage
Status
Resolved
Type
Bug
Type
Design
Type
Known Issue
Type
Patch
Type
Report
Type
To Do
No Milestone
No project
No Assignees
3 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: blender/blender#104179
No description provided.