Blender V4.3
multiplane_scrape.cc File Reference
#include "editors/sculpt_paint/brushes/types.hh"
#include "BLI_enumerable_thread_specific.hh"
#include "BLI_math_matrix.h"
#include "BLI_math_matrix.hh"
#include "BLI_math_rotation.h"
#include "BLI_math_vector_types.hh"
#include "BLI_span.hh"
#include "BLI_task.h"
#include "DNA_brush_types.h"
#include "DNA_object_types.h"
#include "BKE_brush.hh"
#include "BKE_ccg.hh"
#include "BKE_mesh.hh"
#include "BKE_paint.hh"
#include "BKE_pbvh_api.hh"
#include "BKE_subdiv_ccg.hh"
#include "GPU_immediate.hh"
#include "GPU_matrix.hh"
#include "bmesh.hh"
#include <cmath>
#include <cstdlib>
#include "editors/sculpt_paint/mesh_brush_common.hh"
#include "editors/sculpt_paint/sculpt_automask.hh"
#include "editors/sculpt_paint/sculpt_intern.hh"

Go to the source code of this file.

Classes

struct  blender::ed::sculpt_paint::ScrapeSampleData
 
struct  blender::ed::sculpt_paint::LocalData
 

Namespaces

namespace  blender
 
namespace  blender::ed
 
namespace  blender::ed::sculpt_paint
 

Functions

static ScrapeSampleData blender::ed::sculpt_paint::join_samples (const ScrapeSampleData &a, const ScrapeSampleData &b)
 
static BLI_NOINLINE void blender::ed::sculpt_paint::filter_plane_side_factors (const Span< float3 > positions, const Span< float3 > local_positions, const std::array< float4, 2 > &scrape_planes, const MutableSpan< float > factors)
 
static BLI_NOINLINE void blender::ed::sculpt_paint::calc_distances (const Span< float3 > local_positions, const MutableSpan< float > distances)
 
static BLI_NOINLINE void blender::ed::sculpt_paint::calc_translations (const Span< float3 > positions, const Span< float3 > local_positions, const std::array< float4, 2 > &scrape_planes, const MutableSpan< float3 > translations)
 
static BLI_NOINLINE void blender::ed::sculpt_paint::accumulate_samples (const Span< float3 > positions, const Span< float3 > local_positions, const Span< float3 > normals, const Span< float > factors, ScrapeSampleData &sample)
 
static void blender::ed::sculpt_paint::sample_node_surface_mesh (const Depsgraph &depsgraph, const Object &object, const Brush &brush, const float4x4 &mat, const Span< float3 > vert_positions, const Span< float3 > vert_normals, const MeshAttributeData &attribute_data, const bke::pbvh::MeshNode &node, ScrapeSampleData &sample, LocalData &tls)
 
static void blender::ed::sculpt_paint::sample_node_surface_grids (const Depsgraph &depsgraph, const Object &object, const Brush &brush, const float4x4 &mat, const bke::pbvh::GridsNode &node, ScrapeSampleData &sample, LocalData &tls)
 
static void blender::ed::sculpt_paint::sample_node_surface_bmesh (const Depsgraph &depsgraph, const Object &object, const Brush &brush, const float4x4 &mat, const bke::pbvh::BMeshNode &node, ScrapeSampleData &sample, LocalData &tls)
 
static ScrapeSampleData blender::ed::sculpt_paint::sample_surface (const Depsgraph &depsgraph, const Object &object, const Brush &brush, const float4x4 &mat, const IndexMask &node_mask)
 
static void blender::ed::sculpt_paint::calc_faces (const Depsgraph &depsgraph, const Sculpt &sd, const Brush &brush, const float4x4 &mat, const std::array< float4, 2 > &scrape_planes, const float angle, const float strength, const Span< float3 > vert_normals, const MeshAttributeData &attribute_data, const bke::pbvh::MeshNode &node, Object &object, LocalData &tls, const PositionDeformData &position_data)
 
static void blender::ed::sculpt_paint::calc_grids (const Depsgraph &depsgraph, const Sculpt &sd, const Brush &brush, const float4x4 &mat, const std::array< float4, 2 > &scrape_planes, const float angle, const float strength, const bke::pbvh::GridsNode &node, Object &object, LocalData &tls)
 
static void blender::ed::sculpt_paint::calc_bmesh (const Depsgraph &depsgraph, const Sculpt &sd, const Brush &brush, const float4x4 &mat, const std::array< float4, 2 > &scrape_planes, const float angle, const float strength, bke::pbvh::BMeshNode &node, Object &object, LocalData &tls)
 
void blender::ed::sculpt_paint::do_multiplane_scrape_brush (const Depsgraph &depsgraph, const Sculpt &sd, Object &object, const IndexMask &node_mask)
 
void blender::ed::sculpt_paint::multiplane_scrape_preview_draw (const uint gpuattr, const Brush &brush, const SculptSession &ss, const float outline_col[3], const float outline_alpha)