Changeset View
Changeset View
Standalone View
Standalone View
source/blender/editors/sculpt_paint/sculpt_transform.c
| Show First 20 Lines • Show All 115 Lines • ▼ Show 20 Lines | static void sculpt_transform_task_cb(void *__restrict userdata, | ||||
| BKE_pbvh_vertex_iter_end; | BKE_pbvh_vertex_iter_end; | ||||
| BKE_pbvh_node_mark_update(node); | BKE_pbvh_node_mark_update(node); | ||||
| } | } | ||||
| void ED_sculpt_update_modal_transform(struct bContext *C) | void ED_sculpt_update_modal_transform(struct bContext *C) | ||||
| { | { | ||||
| Sculpt *sd = CTX_data_tool_settings(C)->sculpt; | Sculpt *sd = CTX_data_tool_settings(C)->sculpt; | ||||
| if (sd->flags & SCULPT_TRANSFORM_PIVOT_ONLY) { | |||||
| return; | |||||
| } | |||||
| Object *ob = CTX_data_active_object(C); | Object *ob = CTX_data_active_object(C); | ||||
| SculptSession *ss = ob->sculpt; | SculptSession *ss = ob->sculpt; | ||||
| Depsgraph *depsgraph = CTX_data_depsgraph_pointer(C); | Depsgraph *depsgraph = CTX_data_depsgraph_pointer(C); | ||||
| const char symm = SCULPT_mesh_symmetry_xyz_get(ob); | const char symm = SCULPT_mesh_symmetry_xyz_get(ob); | ||||
| SCULPT_vertex_random_access_ensure(ss); | SCULPT_vertex_random_access_ensure(ss); | ||||
| BKE_sculpt_update_object_for_edit(depsgraph, ob, false, false, false); | BKE_sculpt_update_object_for_edit(depsgraph, ob, false, false, false); | ||||
| SculptThreadedTaskData data = { | SculptThreadedTaskData data = { | ||||
| .sd = sd, | .sd = sd, | ||||
| .ob = ob, | .ob = ob, | ||||
sergey: Either the output should happen few lines above, or there is an undocumented dependency between… | |||||
| .nodes = ss->filter_cache->nodes, | .nodes = ss->filter_cache->nodes, | ||||
| }; | }; | ||||
| float final_pivot_pos[3], d_t[3], d_r[4]; | float final_pivot_pos[3], d_t[3], d_r[4]; | ||||
| float t_mat[4][4], r_mat[4][4], s_mat[4][4], pivot_mat[4][4], pivot_imat[4][4], | float t_mat[4][4], r_mat[4][4], s_mat[4][4], pivot_mat[4][4], pivot_imat[4][4], | ||||
| transform_mat[4][4]; | transform_mat[4][4]; | ||||
| copy_v3_v3(final_pivot_pos, ss->pivot_pos); | copy_v3_v3(final_pivot_pos, ss->pivot_pos); | ||||
| ▲ Show 20 Lines • Show All 243 Lines • Show Last 20 Lines | |||||
Either the output should happen few lines above, or there is an undocumented dependency between this operator and random access/object update.