Blender V4.3
blender::ed::sculpt_paint::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, 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()

static void blender::ed::sculpt_paint::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 284 of file editors/sculpt_paint/brushes/layer.cc.

◆ calc_faces()

static void blender::ed::sculpt_paint::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 118 of file editors/sculpt_paint/brushes/layer.cc.

◆ calc_grids()

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

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

◆ calc_translations() [1/2]

static BLI_NOINLINE void blender::ed::sculpt_paint::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 102 of file editors/sculpt_paint/brushes/layer.cc.

◆ calc_translations() [2/2]

static BLI_NOINLINE void blender::ed::sculpt_paint::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 87 of file editors/sculpt_paint/brushes/layer.cc.

◆ clamp_displacement_factors()

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

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

◆ offset_displacement_factors()

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

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

◆ reset_displacement_factors()

static BLI_NOINLINE void blender::ed::sculpt_paint::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 61 of file editors/sculpt_paint/brushes/layer.cc.