Blender V4.3
blender::ed::sculpt_paint::clay_strips_cc Namespace Reference

Classes

struct  LocalData
 

Functions

static BLI_NOINLINE void apply_z_axis_falloff (const Span< float3 > vert_positions, const Span< int > verts, const float4x4 &mat, const MutableSpan< float > factors)
 
static BLI_NOINLINE void apply_z_axis_falloff (const Span< float3 > positions, const float4x4 &mat, const MutableSpan< float > factors)
 
static void calc_faces (const Depsgraph &depsgraph, const Sculpt &sd, const Brush &brush, const float4x4 &mat, const float4 &plane, const float strength, const bool flip, const Span< float3 > vert_normals, const MeshAttributeData &attribute_data, const bke::pbvh::MeshNode &node, Object &object, LocalData &tls, const PositionDeformData &position_data)
 
static void calc_grids (const Depsgraph &depsgraph, const Sculpt &sd, Object &object, const Brush &brush, const float4x4 &mat, const float4 &plane, const float strength, const bool flip, const bke::pbvh::GridsNode &node, LocalData &tls)
 
static void calc_bmesh (const Depsgraph &depsgraph, const Sculpt &sd, Object &object, const Brush &brush, const float4x4 &mat, const float4 &plane, const float strength, const bool flip, bke::pbvh::BMeshNode &node, LocalData &tls)
 

Function Documentation

◆ apply_z_axis_falloff() [1/2]

static BLI_NOINLINE void blender::ed::sculpt_paint::clay_strips_cc::apply_z_axis_falloff ( const Span< float3 > positions,
const float4x4 & mat,
const MutableSpan< float > factors )
static

Definition at line 67 of file clay_strips.cc.

◆ apply_z_axis_falloff() [2/2]

static BLI_NOINLINE void blender::ed::sculpt_paint::clay_strips_cc::apply_z_axis_falloff ( const Span< float3 > vert_positions,
const Span< int > verts,
const float4x4 & mat,
const MutableSpan< float > factors )
static

Applies a linear falloff based on the z distance in brush local space to the factor.

Note: We may want to provide users the ability to change this falloff in the future, the important detail is that we reduce the influence of the brush on vertices that are potentially "deep" inside the cube test area (i.e. on a nearby plane).

TODO: Depending on if other brushes begin to use the calc_brush_cube_distances, we may want to consider either inlining this falloff in that method, or making this a commonly accessible function.

Definition at line 54 of file clay_strips.cc.

◆ calc_bmesh()

static void blender::ed::sculpt_paint::clay_strips_cc::calc_bmesh ( const Depsgraph & depsgraph,
const Sculpt & sd,
Object & object,
const Brush & brush,
const float4x4 & mat,
const float4 & plane,
const float strength,
const bool flip,
bke::pbvh::BMeshNode & node,
LocalData & tls )
static

Definition at line 195 of file clay_strips.cc.

◆ calc_faces()

static void blender::ed::sculpt_paint::clay_strips_cc::calc_faces ( const Depsgraph & depsgraph,
const Sculpt & sd,
const Brush & brush,
const float4x4 & mat,
const float4 & plane,
const float strength,
const bool flip,
const Span< float3 > vert_normals,
const MeshAttributeData & attribute_data,
const bke::pbvh::MeshNode & node,
Object & object,
LocalData & tls,
const PositionDeformData & position_data )
static

Definition at line 78 of file clay_strips.cc.

◆ calc_grids()

static void blender::ed::sculpt_paint::clay_strips_cc::calc_grids ( const Depsgraph & depsgraph,
const Sculpt & sd,
Object & object,
const Brush & brush,
const float4x4 & mat,
const float4 & plane,
const float strength,
const bool flip,
const bke::pbvh::GridsNode & node,
LocalData & tls )
static

Definition at line 137 of file clay_strips.cc.