Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHans Goudey <h.goudey@me.com>2020-05-22 02:25:53 +0300
committerHans Goudey <h.goudey@me.com>2020-05-22 02:25:53 +0300
commit8eca2b4a1bf38d16ad38448e1ba99b26b2a21abe (patch)
tree926d761f5254e7daeae35c3419d7e63f9b68dd65 /source/blender/makesdna
parente8d028c0af2fac1f751ab883290bfe53e2ac3b04 (diff)
parent686eaad84c35701edc411737e55a7d7e8586b379 (diff)
Merge branch 'panel-list-patch-3' into modifier-panels-ui-local
Diffstat (limited to 'source/blender/makesdna')
-rw-r--r--source/blender/makesdna/DNA_ID.h3
-rw-r--r--source/blender/makesdna/DNA_action_types.h8
-rw-r--r--source/blender/makesdna/DNA_anim_types.h8
-rw-r--r--source/blender/makesdna/DNA_brush_types.h44
-rw-r--r--source/blender/makesdna/DNA_customdata_types.h4
-rw-r--r--source/blender/makesdna/DNA_defaults.h4
-rw-r--r--source/blender/makesdna/DNA_dynamicpaint_types.h2
-rw-r--r--source/blender/makesdna/DNA_fluid_types.h92
-rw-r--r--source/blender/makesdna/DNA_gpencil_modifier_types.h70
-rw-r--r--source/blender/makesdna/DNA_gpencil_types.h25
-rw-r--r--source/blender/makesdna/DNA_layer_types.h6
-rw-r--r--source/blender/makesdna/DNA_lightprobe_types.h2
-rw-r--r--source/blender/makesdna/DNA_modifier_types.h9
-rw-r--r--source/blender/makesdna/DNA_movieclip_types.h8
-rw-r--r--source/blender/makesdna/DNA_object_force_types.h10
-rw-r--r--source/blender/makesdna/DNA_scene_types.h17
-rw-r--r--source/blender/makesdna/DNA_screen_types.h8
-rw-r--r--source/blender/makesdna/DNA_space_types.h2
-rw-r--r--source/blender/makesdna/DNA_userdef_types.h4
-rw-r--r--source/blender/makesdna/DNA_view3d_defaults.h2
-rw-r--r--source/blender/makesdna/DNA_view3d_types.h3
-rw-r--r--source/blender/makesdna/intern/CMakeLists.txt4
-rw-r--r--source/blender/makesdna/intern/makesdna.c4
23 files changed, 240 insertions, 99 deletions
diff --git a/source/blender/makesdna/DNA_ID.h b/source/blender/makesdna/DNA_ID.h
index 289f8c7a7b9..39f22fb9555 100644
--- a/source/blender/makesdna/DNA_ID.h
+++ b/source/blender/makesdna/DNA_ID.h
@@ -25,14 +25,13 @@
#ifndef __DNA_ID_H__
#define __DNA_ID_H__
+#include "DNA_defs.h"
#include "DNA_listBase.h"
#ifdef __cplusplus
extern "C" {
#endif
-#include "DNA_defs.h"
-
struct FileData;
struct GHash;
struct GPUTexture;
diff --git a/source/blender/makesdna/DNA_action_types.h b/source/blender/makesdna/DNA_action_types.h
index 40c25d39cad..c95a701a78a 100644
--- a/source/blender/makesdna/DNA_action_types.h
+++ b/source/blender/makesdna/DNA_action_types.h
@@ -28,16 +28,16 @@
#ifndef __DNA_ACTION_TYPES_H__
#define __DNA_ACTION_TYPES_H__
-#ifdef __cplusplus
-extern "C" {
-#endif
-
#include "DNA_ID.h"
#include "DNA_listBase.h"
#include "DNA_userdef_types.h" /* ThemeWireColor */
#include "DNA_vec_types.h"
#include "DNA_view2d_types.h"
+#ifdef __cplusplus
+extern "C" {
+#endif
+
struct Collection;
struct GHash;
struct Object;
diff --git a/source/blender/makesdna/DNA_anim_types.h b/source/blender/makesdna/DNA_anim_types.h
index fbffa039ee9..6a024ec9e7e 100644
--- a/source/blender/makesdna/DNA_anim_types.h
+++ b/source/blender/makesdna/DNA_anim_types.h
@@ -24,15 +24,15 @@
#ifndef __DNA_ANIM_TYPES_H__
#define __DNA_ANIM_TYPES_H__
-#ifdef __cplusplus
-extern "C" {
-#endif
-
#include "DNA_ID.h"
#include "DNA_action_types.h"
#include "DNA_curve_types.h"
#include "DNA_listBase.h"
+#ifdef __cplusplus
+extern "C" {
+#endif
+
/* ************************************************ */
/* F-Curve DataTypes */
diff --git a/source/blender/makesdna/DNA_brush_types.h b/source/blender/makesdna/DNA_brush_types.h
index 0e16abf76f7..c143c2a442a 100644
--- a/source/blender/makesdna/DNA_brush_types.h
+++ b/source/blender/makesdna/DNA_brush_types.h
@@ -75,7 +75,7 @@ typedef struct BrushGpencilSettings {
short fill_leak;
/** Fill zoom factor */
short fill_factor;
- char _pad1[4];
+ int flag2;
/** Number of simplify steps. */
int fill_simplylvl;
@@ -118,11 +118,24 @@ typedef struct BrushGpencilSettings {
int sculpt_mode_flag;
/** Preset type (used to reset brushes - internal). */
short preset_type;
- char _pad3[6];
+ char _pad3[2];
+
+ /** Randomness for Hue. */
+ float random_hue;
+ /** Randomness for Saturation. */
+ float random_saturation;
+ /** Randomness for Value. */
+ float random_value;
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_uv;
+ struct CurveMapping *curve_rand_hue;
+ struct CurveMapping *curve_rand_saturation;
+ struct CurveMapping *curve_rand_value;
/* optional link of material to replace default in context */
/** Material. */
@@ -204,6 +217,33 @@ typedef enum eGPDbrush_Flag {
GP_BRUSH_TRIM_STROKE = (1 << 16),
} eGPDbrush_Flag;
+typedef enum eGPDbrush_Flag2 {
+ /* Brush use random Hue at stroke level */
+ GP_BRUSH_USE_HUE_AT_STROKE = (1 << 0),
+ /* Brush use random Saturation at stroke level */
+ GP_BRUSH_USE_SAT_AT_STROKE = (1 << 1),
+ /* Brush use random Value at stroke level */
+ GP_BRUSH_USE_VAL_AT_STROKE = (1 << 2),
+ /* Brush use random Pressure at stroke level */
+ GP_BRUSH_USE_PRESS_AT_STROKE = (1 << 3),
+ /* Brush use random Strength at stroke level */
+ GP_BRUSH_USE_STRENGTH_AT_STROKE = (1 << 4),
+ /* Brush use random UV at stroke level */
+ GP_BRUSH_USE_UV_AT_STROKE = (1 << 5),
+ /* Brush use Hue random pressure */
+ GP_BRUSH_USE_HUE_RAND_PRESS = (1 << 6),
+ /* Brush use Saturation random pressure */
+ GP_BRUSH_USE_SAT_RAND_PRESS = (1 << 7),
+ /* Brush use Value random pressure */
+ GP_BRUSH_USE_VAL_RAND_PRESS = (1 << 8),
+ /* Brush use Pressure random pressure */
+ GP_BRUSH_USE_PRESSURE_RAND_PRESS = (1 << 9),
+ /* Brush use Strength random pressure */
+ GP_BRUSH_USE_STRENGTH_RAND_PRESS = (1 << 10),
+ /* Brush use UV random pressure */
+ GP_BRUSH_USE_UV_RAND_PRESS = (1 << 11),
+} eGPDbrush_Flag2;
+
/* BrushGpencilSettings->gp_fill_draw_mode */
typedef enum eGP_FillDrawModes {
GP_FILL_DMODE_BOTH = 0,
diff --git a/source/blender/makesdna/DNA_customdata_types.h b/source/blender/makesdna/DNA_customdata_types.h
index 5ee16c2631d..e99d7fd5609 100644
--- a/source/blender/makesdna/DNA_customdata_types.h
+++ b/source/blender/makesdna/DNA_customdata_types.h
@@ -26,12 +26,12 @@
#ifndef __DNA_CUSTOMDATA_TYPES_H__
#define __DNA_CUSTOMDATA_TYPES_H__
+#include "DNA_defs.h"
+
#ifdef __cplusplus
extern "C" {
#endif
-#include "DNA_defs.h"
-
/** Descriptor and storage for a custom data layer. */
typedef struct CustomDataLayer {
/** Type of data in layer. */
diff --git a/source/blender/makesdna/DNA_defaults.h b/source/blender/makesdna/DNA_defaults.h
index 9b4a05034df..ca5ac649e33 100644
--- a/source/blender/makesdna/DNA_defaults.h
+++ b/source/blender/makesdna/DNA_defaults.h
@@ -29,12 +29,12 @@
#include "BLI_utildefines.h"
+#include "dna_type_offsets.h"
+
#ifdef __cplusplus
extern "C" {
#endif
-#include "dna_type_offsets.h"
-
extern const void *DNA_default_table[SDNA_TYPE_MAX];
char *_DNA_struct_default_alloc_impl(const char *data_src, size_t size, const char *alloc_str);
diff --git a/source/blender/makesdna/DNA_dynamicpaint_types.h b/source/blender/makesdna/DNA_dynamicpaint_types.h
index d949b34cb57..c97e68a6a6b 100644
--- a/source/blender/makesdna/DNA_dynamicpaint_types.h
+++ b/source/blender/makesdna/DNA_dynamicpaint_types.h
@@ -10,7 +10,7 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software Foundation,
+ * along with this program; if not, write to the Free Software Foundation,
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
diff --git a/source/blender/makesdna/DNA_fluid_types.h b/source/blender/makesdna/DNA_fluid_types.h
index 6583aa2eeee..7da33a369f3 100644
--- a/source/blender/makesdna/DNA_fluid_types.h
+++ b/source/blender/makesdna/DNA_fluid_types.h
@@ -215,39 +215,54 @@ enum {
#define FLUID_DOMAIN_SMOKE_SCRIPT "smoke_script.py"
#define FLUID_DOMAIN_LIQUID_SCRIPT "liquid_script.py"
-#define FLUID_DOMAIN_FILE_CONFIG "config_####"
-
-#define FLUID_DOMAIN_FILE_DENSITY "density_####"
-#define FLUID_DOMAIN_FILE_SHADOW "shadow_####"
-#define FLUID_DOMAIN_FILE_VEL "vel_####"
-#define FLUID_DOMAIN_FILE_HEAT "heat_####"
-#define FLUID_DOMAIN_FILE_COLORR "color_r_####"
-#define FLUID_DOMAIN_FILE_COLORG "color_g_####"
-#define FLUID_DOMAIN_FILE_COLORB "color_b_####"
-#define FLUID_DOMAIN_FILE_FLAME "flame_####"
-#define FLUID_DOMAIN_FILE_FUEL "fuel_####"
-#define FLUID_DOMAIN_FILE_REACT "react_####"
-
-#define FLUID_DOMAIN_FILE_PHI "phi_####"
-#define FLUID_DOMAIN_FILE_PP "pp_####"
-#define FLUID_DOMAIN_FILE_PVEL "pVel_####"
-
-#define FLUID_DOMAIN_FILE_DENSITYNOISE "density_noise_####"
-#define FLUID_DOMAIN_FILE_COLORRNOISE "color_r_noise_####"
-#define FLUID_DOMAIN_FILE_COLORGNOISE "color_g_noise_####"
-#define FLUID_DOMAIN_FILE_COLORBNOISE "color_b_noise_####"
-#define FLUID_DOMAIN_FILE_FLAMENOISE "flame_noise_####"
-#define FLUID_DOMAIN_FILE_FUELNOISE "fuel_noise_####"
-#define FLUID_DOMAIN_FILE_REACTNOISE "react_noise_####"
-
-#define FLUID_DOMAIN_FILE_MESH "lMesh_####"
-#define FLUID_DOMAIN_FILE_MESHVEL "lVelMesh_####"
-
-#define FLUID_DOMAIN_FILE_PPSND "ppSnd_####"
-#define FLUID_DOMAIN_FILE_PVELSND "pVelSnd_####"
-#define FLUID_DOMAIN_FILE_PLIFESND "pLifeSnd_####"
-
-#define FLUID_DOMAIN_FILE_GUIDEVEL "guidevel_####"
+#define FLUID_FILENAME_CONFIG "config_####"
+
+#define FLUID_FILENAME_DATA "fluid_data_####"
+#define FLUID_FILENAME_NOISE "fluid_noise_####"
+#define FLUID_FILENAME_DENSITY "density_####"
+#define FLUID_FILENAME_SHADOW "shadow_####"
+#define FLUID_FILENAME_VELOCITY "vel_####"
+#define FLUID_FILENAME_HEAT "heat_####"
+#define FLUID_FILENAME_COLORR "color_r_####"
+#define FLUID_FILENAME_COLORG "color_g_####"
+#define FLUID_FILENAME_COLORB "color_b_####"
+#define FLUID_FILENAME_FLAME "flame_####"
+#define FLUID_FILENAME_FUEL "fuel_####"
+#define FLUID_FILENAME_REACT "react_####"
+#define FLUID_FILENAME_PHI "phi_####"
+#define FLUID_FILENAME_PP "pp_####"
+#define FLUID_FILENAME_PVEL "pVel_####"
+#define FLUID_FILENAME_DENSITYNOISE "density_noise_####"
+#define FLUID_FILENAME_COLORRNOISE "color_r_noise_####"
+#define FLUID_FILENAME_COLORGNOISE "color_g_noise_####"
+#define FLUID_FILENAME_COLORBNOISE "color_b_noise_####"
+#define FLUID_FILENAME_FLAMENOISE "flame_noise_####"
+#define FLUID_FILENAME_FUELNOISE "fuel_noise_####"
+#define FLUID_FILENAME_REACTNOISE "react_noise_####"
+#define FLUID_FILENAME_MESH "lMesh_####"
+#define FLUID_FILENAME_MESHVEL "lVelMesh_####"
+#define FLUID_FILENAME_PPSND "ppSnd_####"
+#define FLUID_FILENAME_PVELSND "pVelSnd_####"
+#define FLUID_FILENAME_PLIFESND "pLifeSnd_####"
+#define FLUID_FILENAME_GUIDEVEL "guidevel_####"
+
+#define FLUID_GRIDNAME_DENSITY "density"
+#define FLUID_GRIDNAME_SHADOW "shadow"
+#define FLUID_GRIDNAME_VELOCITY "velocity"
+#define FLUID_GRIDNAME_HEAT "heat"
+#define FLUID_GRIDNAME_COLORR "color_r"
+#define FLUID_GRIDNAME_COLORG "color_g"
+#define FLUID_GRIDNAME_COLORB "color_b"
+#define FLUID_GRIDNAME_FLAME "flame"
+#define FLUID_GRIDNAME_FUEL "fuel"
+#define FLUID_GRIDNAME_REACT "react"
+#define FLUID_GRIDNAME_DENSITYNOISE "density_noise"
+#define FLUID_GRIDNAME_COLORRNOISE "color_r_noise"
+#define FLUID_GRIDNAME_COLORGNOISE "color_g_noise"
+#define FLUID_GRIDNAME_COLORBNOISE "color_b_noise"
+#define FLUID_GRIDNAME_FLAMENOISE "flame_noise"
+#define FLUID_GRIDNAME_FUELNOISE "fuel_noise"
+#define FLUID_GRIDNAME_REACTNOISE "react_noise"
#define FLUID_DOMAIN_EXTENSION_UNI ".uni"
#define FLUID_DOMAIN_EXTENSION_OPENVDB ".vdb"
@@ -256,6 +271,17 @@ enum {
#define FLUID_DOMAIN_EXTENSION_BINOBJ ".bobj.gz"
enum {
+ FLUID_DOMAIN_GRID_FLOAT = 0,
+ FLUID_DOMAIN_GRID_INT = 1,
+ FLUID_DOMAIN_GRID_VEC3F = 2,
+};
+
+enum {
+ FLUID_DOMAIN_CACHE_FILES_SINGLE = 0,
+ FLUID_DOMAIN_CACHE_FILES_COMBINED = 1,
+};
+
+enum {
FLUID_DOMAIN_CACHE_REPLAY = 0,
FLUID_DOMAIN_CACHE_MODULAR = 1,
FLUID_DOMAIN_CACHE_FINAL = 2,
diff --git a/source/blender/makesdna/DNA_gpencil_modifier_types.h b/source/blender/makesdna/DNA_gpencil_modifier_types.h
index dc1370c175a..4d0f1da9b38 100644
--- a/source/blender/makesdna/DNA_gpencil_modifier_types.h
+++ b/source/blender/makesdna/DNA_gpencil_modifier_types.h
@@ -79,10 +79,12 @@ typedef struct GpencilModifierData {
typedef struct NoiseGpencilModifierData {
GpencilModifierData modifier;
+ /** Material for filtering. */
+ struct Material *material;
/** Layer name. */
char layername[64];
/** Material name. */
- char materialname[64];
+ char materialname[64] DNA_DEPRECATED;
/** Optional vertexgroup name, MAX_VGROUP_NAME. */
char vgname[64];
/** Custom index for passes. */
@@ -122,10 +124,12 @@ typedef enum eNoiseGpencil_Flag {
typedef struct SubdivGpencilModifierData {
GpencilModifierData modifier;
+ /** Material for filtering. */
+ struct Material *material;
/** Layer name. */
char layername[64];
/** Material name. */
- char materialname[64];
+ char materialname[64] DNA_DEPRECATED;
/** Custom index for passes. */
int pass_index;
/** Flags. */
@@ -153,10 +157,12 @@ typedef enum eSubdivGpencil_Type {
typedef struct ThickGpencilModifierData {
GpencilModifierData modifier;
+ /** Material for filtering. */
+ struct Material *material;
/** Layer name. */
char layername[64];
/** Material name. */
- char materialname[64];
+ char materialname[64] DNA_DEPRECATED;
/** Optional vertexgroup name, MAX_VGROUP_NAME. */
char vgname[64];
/** Custom index for passes. */
@@ -227,10 +233,12 @@ typedef enum eOpacityModesGpencil_Flag {
typedef struct ColorGpencilModifierData {
GpencilModifierData modifier;
+ /** Material for filtering. */
+ struct Material *material;
/** Layer name. */
char layername[64];
/** Material name. */
- char materialname[64];
+ char materialname[64] DNA_DEPRECATED;
/** Custom index for passes. */
int pass_index;
/** Flags. */
@@ -257,10 +265,12 @@ typedef enum eColorGpencil_Flag {
typedef struct OpacityGpencilModifierData {
GpencilModifierData modifier;
+ /** Material for filtering. */
+ struct Material *material;
/** Layer name. */
char layername[64];
/** Material name. */
- char materialname[64];
+ char materialname[64] DNA_DEPRECATED;
/** Optional vertexgroup name, MAX_VGROUP_NAME. */
char vgname[64];
/** Custom index for passes. */
@@ -292,6 +302,8 @@ typedef enum eOpacityGpencil_Flag {
typedef struct ArrayGpencilModifierData {
GpencilModifierData modifier;
struct Object *object;
+ /** Material for filtering. */
+ struct Material *material;
/** Number of elements in array. */
int count;
/** Several flags. */
@@ -315,7 +327,7 @@ typedef struct ArrayGpencilModifierData {
/** Layer name. */
char layername[64];
/** Material name. */
- char materialname[64];
+ char materialname[64] DNA_DEPRECATED;
/** Material replace (0 keep default). */
int mat_rpl;
/** Custom index for passes. */
@@ -334,13 +346,15 @@ typedef enum eArrayGpencil_Flag {
typedef struct BuildGpencilModifierData {
GpencilModifierData modifier;
+ /** Material for filtering. */
+ struct Material *material;
/** If set, restrict modifier to operating on this layer. */
char layername[64];
int pass_index;
/** Material name. */
- char materialname[64];
+ char materialname[64] DNA_DEPRECATED;
/** Custom index for passes. */
int layer_pass;
@@ -370,6 +384,9 @@ typedef struct BuildGpencilModifierData {
* For the "Concurrent" mode, when should "shorter" strips start/end.
*/
short time_alignment;
+ /** Factor of the stroke (used instead of frame evaluation. */
+ float percentage_fac;
+ char _pad[4];
} BuildGpencilModifierData;
typedef enum eBuildGpencil_Mode {
@@ -405,15 +422,20 @@ typedef enum eBuildGpencil_Flag {
/* Restrict modifier to only operating between the nominated frames */
GP_BUILD_RESTRICT_TIME = (1 << 2),
GP_BUILD_INVERT_LAYERPASS = (1 << 3),
+
+ /* Use a percentage instead of frame number to evaluate strokes. */
+ GP_BUILD_PERCENTAGE = (1 << 4),
} eBuildGpencil_Flag;
typedef struct LatticeGpencilModifierData {
GpencilModifierData modifier;
struct Object *object;
+ /** Material for filtering. */
+ struct Material *material;
/** Layer name. */
char layername[64];
/** Material name. */
- char materialname[64];
+ char materialname[64] DNA_DEPRECATED;
/** Optional vertexgroup name, MAX_VGROUP_NAME. */
char vgname[64];
/** Custom index for passes. */
@@ -438,10 +460,12 @@ typedef enum eLatticeGpencil_Flag {
typedef struct MirrorGpencilModifierData {
GpencilModifierData modifier;
struct Object *object;
+ /** Material for filtering. */
+ struct Material *material;
/** Layer name. */
char layername[64];
/** Material name. */
- char materialname[64];
+ char materialname[64] DNA_DEPRECATED;
/** Custom index for passes. */
int pass_index;
/** Flags. */
@@ -466,12 +490,14 @@ typedef struct HookGpencilModifierData {
GpencilModifierData modifier;
struct Object *object;
+ /** Material for filtering. */
+ struct Material *material;
/** Optional name of bone target, MAX_ID_NAME-2. */
char subtarget[64];
/** Layer name. */
char layername[64];
/** Material name. */
- char materialname[64];
+ char materialname[64] DNA_DEPRECATED;
/** Optional vertexgroup name, MAX_VGROUP_NAME. */
char vgname[64];
/** Custom index for passes. */
@@ -517,10 +543,12 @@ typedef enum eHookGpencil_Falloff {
typedef struct SimplifyGpencilModifierData {
GpencilModifierData modifier;
+ /** Material for filtering. */
+ struct Material *material;
/** Layer name. */
char layername[64];
/** Material name. */
- char materialname[64];
+ char materialname[64] DNA_DEPRECATED;
/** Custom index for passes. */
int pass_index;
/** Flags. */
@@ -560,10 +588,12 @@ typedef enum eSimplifyGpencil_Mode {
typedef struct OffsetGpencilModifierData {
GpencilModifierData modifier;
+ /** Material for filtering. */
+ struct Material *material;
/** Layer name. */
char layername[64];
/** Material name. */
- char materialname[64];
+ char materialname[64] DNA_DEPRECATED;
/** Optional vertexgroup name, MAX_VGROUP_NAME. */
char vgname[64];
/** Custom index for passes. */
@@ -587,10 +617,12 @@ typedef enum eOffsetGpencil_Flag {
typedef struct SmoothGpencilModifierData {
GpencilModifierData modifier;
+ /** Material for filtering. */
+ struct Material *material;
/** Layer name. */
char layername[64];
/** Material name. */
- char materialname[64];
+ char materialname[64] DNA_DEPRECATED;
/** Optional vertexgroup name, MAX_VGROUP_NAME. */
char vgname[64];
/** Custom index for passes. */
@@ -636,10 +668,12 @@ typedef struct ArmatureGpencilModifierData {
typedef struct MultiplyGpencilModifierData {
GpencilModifierData modifier;
+ /** Material for filtering. */
+ struct Material *material;
/** Layer name. */
char layername[64];
/** Material name. */
- char materialname[64];
+ char materialname[64] DNA_DEPRECATED;
/** Custom index for passes. */
int pass_index;
/** Flags. */
@@ -674,10 +708,12 @@ typedef struct TintGpencilModifierData {
GpencilModifierData modifier;
struct Object *object;
+ /** Material for filtering. */
+ struct Material *material;
/** Layer name. */
char layername[64];
/** Material name. */
- char materialname[64];
+ char materialname[64] DNA_DEPRECATED;
/** Optional vertexgroup name, MAX_VGROUP_NAME. */
char vgname[64];
/** Custom index for passes. */
@@ -717,10 +753,12 @@ typedef enum eTintGpencil_Flag {
typedef struct TextureGpencilModifierData {
GpencilModifierData modifier;
+ /** Material for filtering. */
+ struct Material *material;
/** Layer name. */
char layername[64];
/** Material name. */
- char materialname[64];
+ char materialname[64] DNA_DEPRECATED;
/** Optional vertexgroup name, MAX_VGROUP_NAME. */
char vgname[64];
/** Custom index for passes. */
diff --git a/source/blender/makesdna/DNA_gpencil_types.h b/source/blender/makesdna/DNA_gpencil_types.h
index bf9f228b53f..c3180ae79db 100644
--- a/source/blender/makesdna/DNA_gpencil_types.h
+++ b/source/blender/makesdna/DNA_gpencil_types.h
@@ -264,6 +264,10 @@ typedef enum eGPDstroke_Flag {
/* Flag used to indicate that stroke is used for fill close and must use
* fill color for stroke and no fill area */
GP_STROKE_NOFILL = (1 << 8),
+ /* only for use with stroke-buffer (while drawing arrows) */
+ GP_STROKE_USE_ARROW_START = (1 << 12),
+ /* only for use with stroke-buffer (while drawing arrows) */
+ GP_STROKE_USE_ARROW_END = (1 << 13),
/* Tag for update geometry */
GP_STROKE_TAG = (1 << 14),
/* only for use with stroke-buffer (while drawing eraser) */
@@ -280,6 +284,17 @@ typedef enum eGPDstroke_Caps {
GP_STROKE_CAP_MAX,
} GPDstroke_Caps;
+/* Arrows ----------------------- */
+
+/* bGPDataRuntime.arrowstyle */
+typedef enum eGPDstroke_Arrowstyle {
+ GP_STROKE_ARROWSTYLE_NONE = 0,
+ GP_STROKE_ARROWSTYLE_SEGMENT = 2,
+ GP_STROKE_ARROWSTYLE_OPEN = 3,
+ GP_STROKE_ARROWSTYLE_CLOSED = 4,
+ GP_STROKE_ARROWSTYLE_SQUARE = 6,
+} eGPDstroke_Arrowstyle;
+
/* ***************************************** */
/* GP Frame */
@@ -505,12 +520,16 @@ typedef struct bGPdata_Runtime {
/** Number of total elements available in cache. */
int sbuffer_size;
- /** Vertex Color applied to point (while drawing). */
- float vert_color[4];
-
/** Vertex Color applied to Fill (while drawing). */
float vert_color_fill[4];
+ /** Arrow points for stroke corners **/
+ float arrow_start[8];
+ float arrow_end[8];
+ /* Arrow style for each corner */
+ int arrow_start_style;
+ int arrow_end_style;
+
/** Number of control-points for stroke. */
int tot_cp_points;
char _pad2[4];
diff --git a/source/blender/makesdna/DNA_layer_types.h b/source/blender/makesdna/DNA_layer_types.h
index ef129a92699..6348dc5f03d 100644
--- a/source/blender/makesdna/DNA_layer_types.h
+++ b/source/blender/makesdna/DNA_layer_types.h
@@ -21,13 +21,13 @@
#ifndef __DNA_LAYER_TYPES_H__
#define __DNA_LAYER_TYPES_H__
+#include "DNA_freestyle_types.h"
+#include "DNA_listBase.h"
+
#ifdef __cplusplus
extern "C" {
#endif
-#include "DNA_freestyle_types.h"
-#include "DNA_listBase.h"
-
/**
* Render-passes for EEVEE.
* #ViewLayerEEVEE.render_passes
diff --git a/source/blender/makesdna/DNA_lightprobe_types.h b/source/blender/makesdna/DNA_lightprobe_types.h
index 66d6e3f4868..5ddfedfed2d 100644
--- a/source/blender/makesdna/DNA_lightprobe_types.h
+++ b/source/blender/makesdna/DNA_lightprobe_types.h
@@ -10,7 +10,7 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software Foundation,
+ * along with this program; if not, write to the Free Software Foundation,
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
diff --git a/source/blender/makesdna/DNA_modifier_types.h b/source/blender/makesdna/DNA_modifier_types.h
index cd5365cbfae..609d3782997 100644
--- a/source/blender/makesdna/DNA_modifier_types.h
+++ b/source/blender/makesdna/DNA_modifier_types.h
@@ -94,6 +94,7 @@ typedef enum ModifierType {
eModifierType_WeightedNormal = 54,
eModifierType_Weld = 55,
eModifierType_Fluid = 56,
+ eModifierType_Simulation = 57,
NUM_MODIFIER_TYPES,
} ModifierType;
@@ -365,6 +366,7 @@ enum {
MOD_MIR_BISECT_FLIP_AXIS_X = (1 << 11),
MOD_MIR_BISECT_FLIP_AXIS_Y = (1 << 12),
MOD_MIR_BISECT_FLIP_AXIS_Z = (1 << 13),
+ MOD_MIR_MIRROR_UDIM = (1 << 14),
};
typedef struct EdgeSplitModifierData {
@@ -2119,6 +2121,13 @@ enum {
#define MOD_MESHSEQ_READ_ALL \
(MOD_MESHSEQ_READ_VERT | MOD_MESHSEQ_READ_POLY | MOD_MESHSEQ_READ_UV | MOD_MESHSEQ_READ_COLOR)
+typedef struct SimulationModifierData {
+ ModifierData modifier;
+
+ struct Simulation *simulation;
+ char data_path[64];
+} SimulationModifierData;
+
#ifdef __cplusplus
}
#endif
diff --git a/source/blender/makesdna/DNA_movieclip_types.h b/source/blender/makesdna/DNA_movieclip_types.h
index 557e069a4a6..94d11095108 100644
--- a/source/blender/makesdna/DNA_movieclip_types.h
+++ b/source/blender/makesdna/DNA_movieclip_types.h
@@ -24,14 +24,14 @@
#ifndef __DNA_MOVIECLIP_TYPES_H__
#define __DNA_MOVIECLIP_TYPES_H__
-#ifdef __cplusplus
-extern "C" {
-#endif
-
#include "DNA_ID.h"
#include "DNA_color_types.h" /* for color management */
#include "DNA_tracking_types.h"
+#ifdef __cplusplus
+extern "C" {
+#endif
+
struct AnimData;
struct ImBuf;
struct MovieClipProxy;
diff --git a/source/blender/makesdna/DNA_object_force_types.h b/source/blender/makesdna/DNA_object_force_types.h
index daa3a629d27..85520f5a930 100644
--- a/source/blender/makesdna/DNA_object_force_types.h
+++ b/source/blender/makesdna/DNA_object_force_types.h
@@ -24,13 +24,13 @@
#ifndef __DNA_OBJECT_FORCE_TYPES_H__
#define __DNA_OBJECT_FORCE_TYPES_H__
+#include "DNA_defs.h"
+#include "DNA_listBase.h"
+
#ifdef __cplusplus
extern "C" {
#endif
-#include "DNA_defs.h"
-#include "DNA_listBase.h"
-
/* pd->forcefield: Effector Fields types */
typedef enum ePFieldType {
/** (this is used for general effector weight). */
@@ -59,8 +59,8 @@ typedef enum ePFieldType {
PFIELD_TURBULENCE = 11,
/** Linear & quadratic drag. */
PFIELD_DRAG = 12,
- /** Force based on smoke simulation air flow. */
- PFIELD_SMOKEFLOW = 13,
+ /** Force based on fluid simulation velocities. */
+ PFIELD_FLUIDFLOW = 13,
/* Keep last. */
NUM_PFIELD_TYPES,
diff --git a/source/blender/makesdna/DNA_scene_types.h b/source/blender/makesdna/DNA_scene_types.h
index 357c1158b47..8c34a7cb0a1 100644
--- a/source/blender/makesdna/DNA_scene_types.h
+++ b/source/blender/makesdna/DNA_scene_types.h
@@ -29,10 +29,6 @@
/* XXX, temp feature - campbell */
#define DURIAN_CAMERA_SWITCH
-#ifdef __cplusplus
-extern "C" {
-#endif
-
#include "DNA_ID.h"
#include "DNA_collection_types.h"
#include "DNA_color_types.h" /* color management */
@@ -46,6 +42,10 @@ extern "C" {
#include "DNA_vec_types.h"
#include "DNA_view3d_types.h"
+#ifdef __cplusplus
+extern "C" {
+#endif
+
struct AnimData;
struct Brush;
struct Collection;
@@ -555,13 +555,14 @@ typedef struct BakeData {
short margin, flag;
float cage_extrusion;
+ float max_ray_distance;
int pass_filter;
char normal_swizzle[3];
char normal_space;
char save_mode;
- char _pad[3];
+ char _pad[7];
struct Object *cage_object;
} BakeData;
@@ -1644,6 +1645,11 @@ typedef struct SceneEEVEE {
float light_threshold;
} SceneEEVEE;
+typedef struct SceneGpencil {
+ float smaa_threshold;
+ char _pad[4];
+} SceneGpencil;
+
/* *************************************************************** */
/* Scene ID-Block */
@@ -1775,6 +1781,7 @@ typedef struct Scene {
struct SceneDisplay display;
struct SceneEEVEE eevee;
+ struct SceneGpencil grease_pencil_settings;
} Scene;
/* **************** RENDERDATA ********************* */
diff --git a/source/blender/makesdna/DNA_screen_types.h b/source/blender/makesdna/DNA_screen_types.h
index 7306ff1a9e1..07cba2bad1c 100644
--- a/source/blender/makesdna/DNA_screen_types.h
+++ b/source/blender/makesdna/DNA_screen_types.h
@@ -555,12 +555,8 @@ enum {
PNL_LAYOUT_VERT_BAR = (1 << 3),
/** This panel type represents data external to the UI. */
PNL_INSTANCED = (1 << 4),
- /* Convenience flag to avoid searching through parents to tell if it belongs to a list panel. */
- PNL_INSTANCED_SUBPANEL = (1 << 5),
- /** This panel marks the start of a list panel sequence. Not recreated on list change. */
- PNL_INSTANCED_LIST_START = (1 << 6),
- /** Draw panel with a theme corresponding to box widgets. */
- PNL_DRAW_BOX = (1 << 7),
+ /** Draw panel like a box widget. */
+ PNL_DRAW_BOX = (1 << 6),
};
/* Fallback panel category (only for old scripts which need updating) */
diff --git a/source/blender/makesdna/DNA_space_types.h b/source/blender/makesdna/DNA_space_types.h
index c1bfbe8a8b2..8f4f066efbb 100644
--- a/source/blender/makesdna/DNA_space_types.h
+++ b/source/blender/makesdna/DNA_space_types.h
@@ -1720,7 +1720,7 @@ typedef enum eSpace_Type {
SPACE_TOPBAR = 21,
SPACE_STATUSBAR = 22,
- SPACE_TYPE_LAST = SPACE_STATUSBAR,
+#define SPACE_TYPE_LAST SPACE_STATUSBAR
} eSpace_Type;
/* use for function args */
diff --git a/source/blender/makesdna/DNA_userdef_types.h b/source/blender/makesdna/DNA_userdef_types.h
index d40f07c1fff..019e4c9ea9e 100644
--- a/source/blender/makesdna/DNA_userdef_types.h
+++ b/source/blender/makesdna/DNA_userdef_types.h
@@ -873,9 +873,11 @@ typedef struct UserDef {
int sequencer_disk_cache_compression; /* eUserpref_DiskCacheCompression */
int sequencer_disk_cache_size_limit;
short sequencer_disk_cache_flag;
-
char _pad5[2];
+ float collection_instance_empty_size;
+ char _pad10[4];
+
struct WalkNavigation walk_navigation;
/** The UI for the user preferences. */
diff --git a/source/blender/makesdna/DNA_view3d_defaults.h b/source/blender/makesdna/DNA_view3d_defaults.h
index afade37d0c8..20b491c47f2 100644
--- a/source/blender/makesdna/DNA_view3d_defaults.h
+++ b/source/blender/makesdna/DNA_view3d_defaults.h
@@ -65,7 +65,7 @@
V3D_OVERLAY_EDIT_SHARP | V3D_OVERLAY_EDIT_FREESTYLE_EDGE | \
V3D_OVERLAY_EDIT_FREESTYLE_FACE | V3D_OVERLAY_EDIT_EDGES | \
V3D_OVERLAY_EDIT_CREASES | V3D_OVERLAY_EDIT_BWEIGHTS | \
- V3D_OVERLAY_EDIT_CU_HANDLES | V3D_OVERLAY_EDIT_CU_NORMALS, \
+ V3D_OVERLAY_EDIT_CU_HANDLES, \
\
.gpencil_paper_opacity = 0.5f, \
.gpencil_grid_opacity = 0.9f, \
diff --git a/source/blender/makesdna/DNA_view3d_types.h b/source/blender/makesdna/DNA_view3d_types.h
index e486730ebcf..6d8d16c4313 100644
--- a/source/blender/makesdna/DNA_view3d_types.h
+++ b/source/blender/makesdna/DNA_view3d_types.h
@@ -450,6 +450,7 @@ enum {
#define V3D_GP_FADE_NOACTIVE_GPENCIL (1 << 6) /* Fade other GPencil objects */
#define V3D_GP_SHOW_STROKE_DIRECTION (1 << 7) /* Show Strokes Directions */
#define V3D_GP_SHOW_MATERIAL_NAME (1 << 8) /* Show Material names */
+#define V3D_GP_SHOW_GRID_XRAY (1 << 9) /* Show Canvas Grid on Top */
/** #View3DShading.flag */
enum {
@@ -549,7 +550,7 @@ enum {
V3D_AROUND_ACTIVE = 4,
};
-/** #View3d.gridflag */
+/** #View3D.gridflag */
#define V3D_SHOW_FLOOR (1 << 0)
#define V3D_SHOW_X (1 << 1)
#define V3D_SHOW_Y (1 << 2)
diff --git a/source/blender/makesdna/intern/CMakeLists.txt b/source/blender/makesdna/intern/CMakeLists.txt
index 1b0bf086269..01e3971a216 100644
--- a/source/blender/makesdna/intern/CMakeLists.txt
+++ b/source/blender/makesdna/intern/CMakeLists.txt
@@ -58,6 +58,10 @@ setup_platform_linker_flags()
add_executable(makesdna ${SRC} ${SRC_DNA_INC})
+if(WIN32 AND NOT UNIX)
+ target_link_libraries(makesdna ${PTHREADS_LIBRARIES})
+endif()
+
# Output dna.c
add_custom_command(
OUTPUT
diff --git a/source/blender/makesdna/intern/makesdna.c b/source/blender/makesdna/intern/makesdna.c
index 49f778f2eb1..09cfe54e94d 100644
--- a/source/blender/makesdna/intern/makesdna.c
+++ b/source/blender/makesdna/intern/makesdna.c
@@ -1074,8 +1074,8 @@ static int calculate_struct_sizes(int firststruct, FILE *file_verify, const char
types_size_native[structtype] = size_native;
types_size_32[structtype] = size_32;
types_size_64[structtype] = size_64;
- /* two ways to detect if a struct contains a pointer:
- * has_pointer is set or size_native doesn't match any of 32/64bit lengths*/
+ /* Two ways to detect if a struct contains a pointer:
+ * has_pointer is set or size_native doesn't match any of 32/64bit lengths. */
if (has_pointer || size_64 != size_native || size_32 != size_native) {
if (size_64 % 8) {
fprintf(stderr,