Blender V5.0
blender::ed::sculpt_paint::brushes::layer_cc Namespace Reference

Classes

struct  LocalData

Functions

static BLI_NOINLINE void offset_displacement_factors (const MutableSpan< float > displacement_factors, const Span< float > factors, const float strength)
static BLI_NOINLINE void reset_displacement_factors (const MutableSpan< float > displacement_factors, const Span< float > factors, const float strength)
static BLI_NOINLINE void clamp_displacement_factors (const MutableSpan< float > displacement_factors, const Span< float > masks)
static BLI_NOINLINE void calc_translations (const Span< float3 > orig_positions, const Span< float3 > orig_normals, const Span< float3 > positions, const Span< float > displacement_factors, const Span< float > factors, const float height, const MutableSpan< float3 > r_translations)
static BLI_NOINLINE void calc_translations (const Span< float3 > base_positions, const Span< float3 > base_normals, const Span< int > verts, const Span< float3 > positions, const Span< float > displacement_factors, const Span< float > factors, const float height, const MutableSpan< float3 > r_translations)
static void calc_faces (const Depsgraph &depsgraph, const Sculpt &sd, const Brush &brush, const MeshAttributeData &attribute_data, const Span< float3 > vert_normals, const bool use_persistent_base, const Span< float3 > persistent_base_positions, const Span< float3 > persistent_base_normals, Object &object, bke::pbvh::MeshNode &node, LocalData &tls, MutableSpan< float > layer_displacement_factor, const PositionDeformData &position_data)
static void calc_grids (const Depsgraph &depsgraph, const Sculpt &sd, const Brush &brush, Object &object, const bool use_persistent_base, const Span< float3 > persistent_base_positions, const Span< float3 > persistent_base_normals, bke::pbvh::GridsNode &node, LocalData &tls, MutableSpan< float > layer_displacement_factor)
static void calc_bmesh (const Depsgraph &depsgraph, const Sculpt &sd, const Brush &brush, Object &object, bke::pbvh::BMeshNode &node, LocalData &tls, MutableSpan< float > layer_displacement_factor)

Function Documentation

◆ calc_bmesh()

void blender::ed::sculpt_paint::brushes::layer_cc::calc_bmesh ( const Depsgraph & depsgraph,
const Sculpt & sd,
const Brush & brush,
Object & object,
bke::pbvh::BMeshNode & node,
LocalData & tls,
MutableSpan< float > layer_displacement_factor )
static

Definition at line 318 of file editors/sculpt_paint/brushes/layer.cc.

◆ calc_faces()

void blender::ed::sculpt_paint::brushes::layer_cc::calc_faces ( const Depsgraph & depsgraph,
const Sculpt & sd,
const Brush & brush,
const MeshAttributeData & attribute_data,
const Span< float3 > vert_normals,
const bool use_persistent_base,
const Span< float3 > persistent_base_positions,
const Span< float3 > persistent_base_normals,
Object & object,
bke::pbvh::MeshNode & node,
LocalData & tls,
MutableSpan< float > layer_displacement_factor,
const PositionDeformData & position_data )
static

Definition at line 119 of file editors/sculpt_paint/brushes/layer.cc.

◆ calc_grids()

void blender::ed::sculpt_paint::brushes::layer_cc::calc_grids ( const Depsgraph & depsgraph,
const Sculpt & sd,
const Brush & brush,
Object & object,
const bool use_persistent_base,
const Span< float3 > persistent_base_positions,
const Span< float3 > persistent_base_normals,
bke::pbvh::GridsNode & node,
LocalData & tls,
MutableSpan< float > layer_displacement_factor )
static

Definition at line 219 of file editors/sculpt_paint/brushes/layer.cc.

◆ calc_translations() [1/2]

BLI_NOINLINE void blender::ed::sculpt_paint::brushes::layer_cc::calc_translations ( const Span< float3 > base_positions,
const Span< float3 > base_normals,
const Span< int > verts,
const Span< float3 > positions,
const Span< float > displacement_factors,
const Span< float > factors,
const float height,
const MutableSpan< float3 > r_translations )
static

Definition at line 103 of file editors/sculpt_paint/brushes/layer.cc.

◆ calc_translations() [2/2]

BLI_NOINLINE void blender::ed::sculpt_paint::brushes::layer_cc::calc_translations ( const Span< float3 > orig_positions,
const Span< float3 > orig_normals,
const Span< float3 > positions,
const Span< float > displacement_factors,
const Span< float > factors,
const float height,
const MutableSpan< float3 > r_translations )
static

Definition at line 88 of file editors/sculpt_paint/brushes/layer.cc.

◆ clamp_displacement_factors()

BLI_NOINLINE void blender::ed::sculpt_paint::brushes::layer_cc::clamp_displacement_factors ( const MutableSpan< float > displacement_factors,
const Span< float > masks )
static

Definition at line 72 of file editors/sculpt_paint/brushes/layer.cc.

◆ offset_displacement_factors()

BLI_NOINLINE void blender::ed::sculpt_paint::brushes::layer_cc::offset_displacement_factors ( const MutableSpan< float > displacement_factors,
const Span< float > factors,
const float strength )
static

Definition at line 45 of file editors/sculpt_paint/brushes/layer.cc.

◆ reset_displacement_factors()

BLI_NOINLINE void blender::ed::sculpt_paint::brushes::layer_cc::reset_displacement_factors ( const MutableSpan< float > displacement_factors,
const Span< float > factors,
const float strength )
static

When using persistent base, the layer brush (holding Control) invert mode resets the height of the layer to 0. This makes possible to clean edges of previously added layers on top of the base.

The main direction of the layers is inverted using the regular brush strength with the brush direction property.

Definition at line 62 of file editors/sculpt_paint/brushes/layer.cc.