Blender V5.0
DNA_brush_types.h
Go to the documentation of this file.
1/* SPDX-FileCopyrightText: 2005 Blender Authors
2 *
3 * SPDX-License-Identifier: GPL-2.0-or-later */
4
8
9#pragma once
10
11#include "DNA_ID.h"
12#include "DNA_brush_enums.h"
13#include "DNA_curve_types.h"
14#include "DNA_defs.h"
15#include "DNA_texture_types.h" /* for MTex */
16
17struct CurveMapping;
18struct Image;
19struct MTex;
20struct Material;
21
22typedef struct BrushGpencilSettings {
46
49 char _pad2[2];
50 /* Type of caps: eGPDstroke_Caps. */
51 int8_t caps_type;
52 char _pad[1];
53
54 int flag2;
55
62
66 float uv_random;
68 int brush_type DNA_DEPRECATED;
78 int flag;
79
81 float hardness;
83 float aspect_ratio[2];
86
90
99
106
108 char _pad1[4];
109
114
124
129
130 /* optional link of material to replace default in context */
136
159
161#define AUTOMASKING_BOUNDARY_EDGES_MAX_PROPAGATION_STEPS 20
166typedef struct Brush {
167#ifdef __cplusplus
170 static constexpr ID_Type id_type = ID_BR;
171#endif
172
174
176 struct MTex mtex;
178
183
187
189 short blend;
191 short ob_mode;
193 float weight;
195 int size;
197 int flag;
198 int flag2;
200
203
207 float jitter;
218 float rate;
219
221 float color[3];
223 float hsv_jitter[3];
224
229
233
235 float alpha;
237 float hardness;
239 float flow;
241 float wet_mix;
244 float density;
246
248 /* Factor that controls the shape of the brush tip by rounding the corners of a square. */
249 /* 0.0 value produces a square, 1.0 produces a circle. */
252
255
256 /* Deprecated sRGB color for forward compatibility. */
257 float rgb[3] DNA_DEPRECATED;
258 float secondary_rgb[3] DNA_DEPRECATED;
259
263
266
269
275
281
285
306 char _pad1[10];
307
309
311
313
315
319
322 float height;
323
324 /* Plane Brush */
330
332
334
335 /* Maximum distance to search fake neighbors from a vertex. */
337
339
340 /* automasking */
343
348
351
352 /* snake hook */
354
355 /* pose */
361
362 /* boundary */
366
367 /* cloth */
371
374
377
379
380 /* smooth */
385
386 /* multiplane scrape */
388
389 /* smear */
391
392 /* slide/relax */
394
395 /* overlay */
399
401
402 /* soften/sharpen */
406
407 /* fill tool */
409
410 float add_col[4];
411 float sub_col[4];
412
413 float stencil_pos[2];
415
418
421
424
427
428/* Struct to hold palette colors for sorting. */
429#
430#
431typedef struct tPaletteColorHSV {
432 float rgb[3];
433 float value;
434 float h;
435 float s;
436 float v;
438
439typedef struct PaletteColor {
441 /* Two values, one to store color, other to store values for sculpt/weight. */
442 float color[3];
443 float value;
444
445 /* For forward compatibility. */
446 float rgb[3] DNA_DEPRECATED;
447 float _pad;
449
450typedef struct Palette {
451#ifdef __cplusplus
453 static constexpr ID_Type id_type = ID_PAL;
454#endif
455
457
460
462 char _pad[4];
464
471
472typedef struct PaintCurve {
473#ifdef __cplusplus
475 static constexpr ID_Type id_type = ID_PC;
476#endif
477
ID and Library types, which are fundamental for SDNA.
ID_Type
@ ID_PAL
@ ID_BR
@ ID_PC
#define DNA_DEFINE_CXX_METHODS(class_name)
Definition DNA_defs.h:66
struct CurveMapping * curve_parameter_falloff
struct CurveMapping * curve_sensitivity
struct CurveMapping * curve_strength
struct CurveMapping * curve_jitter
struct CurveMapping * curve_rand_pressure
struct CurveMapping * curve_rand_strength
struct CurveMapping * curve_rand_saturation
struct CurveMapping * curve_rand_hue
struct CurveMapping * curve_rand_uv
int brush_type DNA_DEPRECATED
struct Material * material
struct Material * material_alt
struct CurveMapping * curve_rand_value
float cloth_mass
float falloff_angle
float multiplane_scrape_angle
float alpha
float secondary_color[3]
int pose_deform_type
float topology_rake_factor
float automasking_cavity_factor
char sculpt_brush_type
float jitter
int mask_overlay_alpha
int plane_inversion_mode
struct ColorBand * gradient
int sculpt_plane
int blur_kernel_radius
struct CurveMapping * curve_rand_saturation
int cloth_deform_type
float area_radius_factor
int snake_hook_deform_type
float density
int slide_deform_type
int elastic_deform_type
float automasking_view_normal_limit
int automasking_flags
float add_col[4]
float normal_radius_factor
struct CurveMapping * curve_rand_hue
struct MTex mtex
int pose_smooth_iterations
float stencil_pos[2]
int texture_overlay_alpha
float normal_weight
float rake_factor
float stabilize_normal
float elastic_deform_volume_preservation
char gpencil_sculpt_brush_type
float smooth_stroke_factor
float sharp_threshold
short ob_mode
float cloth_sim_falloff
float wet_paint_radius_factor
float stencil_dimension[2]
int smooth_stroke_radius
int cursor_overlay_alpha
char image_brush_type
float plane_depth
struct CurveMapping * curve_jitter
int automasking_cavity_blur_steps
float tip_scale_x
float texture_sample_bias
struct CurveMapping * curve_rand_value
float fill_threshold
int boundary_falloff_type
float stabilize_plane
float plane_trim
int automasking_boundary_edges_propagation_steps
int dash_samples
char gradient_fill_mode
char falloff_shape
float tilt_strength_factor
struct CurveMapping * curve_distance_falloff
int jitter_absolute
float mask_stencil_pos[2]
char gpencil_weight_brush_type
float hardness
struct BrushGpencilSettings * gpencil_settings
float cloth_sim_limit
char has_unsaved_changes
short blend
char gradient_stroke_mode
char gpencil_vertex_brush_type
int input_samples
float height
int sampling_flag
PreviewImage * preview
float sub_col[4]
struct CurveMapping * automasking_cavity_curve
int pose_ik_segments
float dash_ratio
struct BrushCurvesSculptSettings * curves_sculpt_settings
char curves_sculpt_brush_type
float crease_pinch_factor
char mask_tool
float unprojected_size
float plane_height
float disconnected_distance_max
int smooth_deform_type
char _pad1[10]
struct MTex mask_mtex
float automasking_start_normal_limit
int mask_pressure
float mask_stencil_dimension[2]
int cloth_simulation_area_type
float wet_mix
float wet_persistence
float boundary_offset
float automasking_start_normal_falloff
int color_jitter_flag
int deform_target
float weight
float plane_offset
float automasking_view_normal_falloff
int gradient_spacing
int curve_distance_falloff_preset
char gpencil_brush_type
int smear_deform_type
int surface_smooth_iterations
float cloth_constraint_softbody_strength
float surface_smooth_current_vertex
struct PaintCurve * paint_curve
char weight_brush_type
float hsv_jitter[3]
int cloth_force_falloff_type
int boundary_deform_type
float pose_offset
int pose_origin_type
float tip_roundness
float rgb[3] DNA_DEPRECATED
float autosmooth_factor
int paint_flags
struct CurveMapping * curve_size
float cloth_damping
float color[3]
int overlay_flags
char vertex_brush_type
float surface_smooth_shape_preservation
struct CurveMapping * curve_strength
Definition DNA_ID.h:414
PaintCurvePoint * points
struct PaletteColor * next
float rgb[3] DNA_DEPRECATED
struct PaletteColor * prev
ListBase colors
char _pad[4]