System Information
Operating system: Windows 10
Graphics card: GTX 1050Ti (latest studio driver)
Other: Wacom Intuos 5 (latest driver, wireless)
Blender Version
Broken: All versions after 2.90.1
Worked: 2.90.1
Caused by rB3e5431fdf439: Sculpt: Invert Smooth to Enhance Details
Short description of error
Crash in sculpt mode with the Draw brush and smoothing (pressing ⇧) when using a tablet.
The issue is that ss->cache->detail_directions is NULL in do_enhance_details_brush_task_cb_ex.
Exact steps for others to reproduce the error
- File > New > Sculpting
- choose the Smooth brush
- set Radius to 4px
- enable Strength Pressure sensitivity (should be ON by default though)
- use tablet (not mouse) and tap with the stylus, don't drag, repeatedly
- crash
Original report:
- Open the attached file
- Select the Draw brush, hold ⇧ and tap with the stylus, don't drag, repeatedly on the area shown in the screenshot below.
Stack trace 3.0.0 Alpha, branch: master, commit date: 2021-06-24 07:12, hash: rB657015992902
madd_v3_v3v3fl(float * r, const float * a, const float * b, float f) Line 720 C do_enhance_details_brush_task_cb_ex(void * userdata, const int n, const TaskParallelTLS * tls) Line 249 C BLI_task_parallel_range(const int start, const int stop, void * userdata, void(*)(void *, const int, const TaskParallelTLS *) func, const TaskParallelSettings * settings) Line 140 C++ SCULPT_enhance_details_brush(Sculpt * sd, Object * ob, PBVHNode * * nodes, const int totnode) Line 291 C SCULPT_do_smooth_brush(Sculpt * sd, Object * ob, PBVHNode * * nodes, int totnode) Line 401 C do_brush_action(Sculpt * sd, Object * ob, Brush * brush, UnifiedPaintSettings * ups) Line 6017 C do_tiled(Sculpt * sd, Object * ob, Brush * brush, UnifiedPaintSettings * ups, void(*)(Sculpt *, Object *, Brush *, UnifiedPaintSettings *) action) Line 6469 C do_symmetrical_brush_actions(Sculpt * sd, Object * ob, void(*)(Sculpt *, Object *, Brush *, UnifiedPaintSettings *) action, UnifiedPaintSettings * ups) Line 6552 C sculpt_stroke_update_step(bContext * C, PaintStroke * UNUSED_stroke, PointerRNA * itemptr) Line 7929 C paint_brush_stroke_add_step(bContext * C, wmOperator * op, const float * mouse_in, float pressure) Line 637 C paint_space_stroke(bContext * C, wmOperator * op, const float * final_mouse, float final_pressure) Line 873 C paint_stroke_modal(bContext * C, wmOperator * op, const wmEvent * event) Line 1553 C wm_handler_operator_call(bContext * C, ListBase * handlers, wmEventHandler * handler_base, wmEvent * event, PointerRNA * properties, const unsigned char * kmi_idname) Line 2080 C wm_handlers_do_intern(bContext * C, wmEvent * event, ListBase * handlers) Line 2909 C wm_handlers_do(bContext * C, wmEvent * event, ListBase * handlers) Line 2957 C wm_event_do_handlers(bContext * C) Line 3377 C WM_main(bContext * C) Line 650 C main(int argc, const unsigned char * * UNUSED_argv_c) Line 562 C
Original crash log