diff options
Diffstat (limited to 'source/blender/editors/sculpt_paint/sculpt_intern.h')
-rw-r--r-- | source/blender/editors/sculpt_paint/sculpt_intern.h | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/source/blender/editors/sculpt_paint/sculpt_intern.h b/source/blender/editors/sculpt_paint/sculpt_intern.h index 74feaa8ca00..79b1a5bde7b 100644 --- a/source/blender/editors/sculpt_paint/sculpt_intern.h +++ b/source/blender/editors/sculpt_paint/sculpt_intern.h @@ -392,6 +392,22 @@ struct SculptPoseIKChain *SCULPT_pose_ik_chain_init(struct Sculpt *sd, const float radius); void SCULPT_pose_ik_chain_free(struct SculptPoseIKChain *ik_chain); +/* Boundary Brush. */ +struct SculptBoundary *SCULPT_boundary_data_init(Object *object, + const int initial_vertex, + const float radius); +void SCULPT_boundary_data_free(struct SculptBoundary *bdata); +void SCULPT_do_boundary_brush(struct Sculpt *sd, + struct Object *ob, + struct PBVHNode **nodes, + int totnode); + +void SCULPT_boundary_edges_preview_draw(const uint gpuattr, + struct SculptSession *ss, + const float outline_col[3], + const float outline_alpha); +void SCULPT_boundary_pivot_line_preview_draw(const uint gpuattr, struct SculptSession *ss); + /* Multiplane Scrape Brush. */ void SCULPT_do_multiplane_scrape_brush(Sculpt *sd, Object *ob, PBVHNode **nodes, int totnode); void SCULPT_multiplane_scrape_preview_draw(const uint gpuattr, @@ -630,6 +646,9 @@ typedef struct SculptThreadedTaskData { float transform_mats[8][4][4]; + /* Boundary brush */ + float boundary_deform_strength; + float cloth_time_step; SculptClothSimulation *cloth_sim; float *cloth_sim_initial_location; @@ -855,6 +874,9 @@ typedef struct StrokeCache { float initial_normal[3]; float true_initial_normal[3]; + /* Boundary brush */ + struct SculptBoundary *bdata[PAINT_SYMM_AREAS]; + /* Surface Smooth Brush */ /* Stores the displacement produced by the laplacian step of HC smooth. */ float (*surface_smooth_laplacian_disp)[3]; |