diff options
author | Lukas Stockner <lukas.stockner@freenet.de> | 2016-11-11 05:17:19 +0300 |
---|---|---|
committer | Lukas Stockner <lukas.stockner@freenet.de> | 2016-11-11 05:17:19 +0300 |
commit | a5e4bfb807aa1363c49625cb6c4d2a0f7b9db968 (patch) | |
tree | e6201da4453c24c36c0073042697f11eb2983b04 /source/blender/makesdna | |
parent | 91073782f6cd0b287f52aaa9b4c04438dbeb4a1d (diff) | |
parent | a1aa3a8b75758124a93ddd67ca39dd8c6f7d18a1 (diff) |
Merge remote-tracking branch 'origin/master' into soc-2016-cycles_denoising
Conflicts:
intern/cycles/blender/blender_python.cpp
intern/cycles/device/device_opencl.cpp
intern/cycles/kernel/kernel_accumulate.h
intern/cycles/kernel/kernel_path.h
intern/cycles/kernel/kernel_path_branched.h
intern/cycles/kernel/kernel_path_surface.h
intern/cycles/kernel/kernel_types.h
intern/cycles/kernel/svm/svm_displace.h
Diffstat (limited to 'source/blender/makesdna')
-rw-r--r-- | source/blender/makesdna/DNA_ID.h | 13 | ||||
-rw-r--r-- | source/blender/makesdna/DNA_anim_types.h | 5 | ||||
-rw-r--r-- | source/blender/makesdna/DNA_cachefile_types.h | 2 | ||||
-rw-r--r-- | source/blender/makesdna/DNA_constraint_types.h | 1 | ||||
-rw-r--r-- | source/blender/makesdna/DNA_modifier_types.h | 12 | ||||
-rw-r--r-- | source/blender/makesdna/DNA_movieclip_types.h | 1 | ||||
-rw-r--r-- | source/blender/makesdna/DNA_rigidbody_types.h | 12 | ||||
-rw-r--r-- | source/blender/makesdna/DNA_scene_types.h | 47 | ||||
-rw-r--r-- | source/blender/makesdna/DNA_smoke_types.h | 56 | ||||
-rw-r--r-- | source/blender/makesdna/DNA_space_types.h | 10 | ||||
-rw-r--r-- | source/blender/makesdna/DNA_userdef_types.h | 4 |
11 files changed, 153 insertions, 10 deletions
diff --git a/source/blender/makesdna/DNA_ID.h b/source/blender/makesdna/DNA_ID.h index 5c1bfc229da..feeb2d5e4d7 100644 --- a/source/blender/makesdna/DNA_ID.h +++ b/source/blender/makesdna/DNA_ID.h @@ -172,6 +172,13 @@ enum ePreviewImage_Flag { PRV_USER_EDITED = (1 << 1), /* if user-edited, do not auto-update this anymore! */ }; +/* for PreviewImage->tag */ +enum { + PRV_TAG_DEFFERED = (1 << 0), /* Actual loading of preview is deffered. */ + PRV_TAG_DEFFERED_RENDERING = (1 << 1), /* Deffered preview is being loaded. */ + PRV_TAG_DEFFERED_DELETE = (1 << 2), /* Deffered preview should be deleted asap. */ +}; + typedef struct PreviewImage { /* All values of 2 are really NUM_ICON_SIZES */ unsigned int w[2]; @@ -184,12 +191,12 @@ typedef struct PreviewImage { struct GPUTexture *gputexture[2]; int icon_id; /* Used by previews outside of ID context. */ - char pad[3]; - char use_deferred; /* for now a mere bool, if we add more deferred loading methods we can switch to bitflag. */ + short tag; /* Runtime data. */ + char pad[2]; } PreviewImage; #define PRV_DEFERRED_DATA(prv) \ - (CHECK_TYPE_INLINE(prv, PreviewImage *), BLI_assert((prv)->use_deferred), (void *)((prv) + 1)) + (CHECK_TYPE_INLINE(prv, PreviewImage *), BLI_assert((prv)->tag & PRV_TAG_DEFFERED), (void *)((prv) + 1)) /** * Defines for working with IDs. diff --git a/source/blender/makesdna/DNA_anim_types.h b/source/blender/makesdna/DNA_anim_types.h index 31fe8fe563e..e50a2637fff 100644 --- a/source/blender/makesdna/DNA_anim_types.h +++ b/source/blender/makesdna/DNA_anim_types.h @@ -939,7 +939,10 @@ typedef enum eAnimData_Flag { ADT_UI_ACTIVE = (1<<15), /* F-Curves from this AnimData block are not visible in the Graph Editor */ - ADT_CURVES_NOT_VISIBLE = (1<<16) + ADT_CURVES_NOT_VISIBLE = (1<<16), + + /* F-Curves from this AnimData block are always visible */ + ADT_CURVES_ALWAYS_VISIBLE = (1<<17), } eAnimData_Flag; /* Animation Data recalculation settings (to be set by depsgraph) */ diff --git a/source/blender/makesdna/DNA_cachefile_types.h b/source/blender/makesdna/DNA_cachefile_types.h index dd47d63fc19..46b1adf2725 100644 --- a/source/blender/makesdna/DNA_cachefile_types.h +++ b/source/blender/makesdna/DNA_cachefile_types.h @@ -36,10 +36,10 @@ extern "C" { #endif - /* CacheFile::flag */ enum { CACHEFILE_DS_EXPAND = (1 << 0), + CACHEFILE_DIRTY = (1 << 1), }; /* CacheFile::draw_flag */ diff --git a/source/blender/makesdna/DNA_constraint_types.h b/source/blender/makesdna/DNA_constraint_types.h index fc4e7de73f5..ca774864e95 100644 --- a/source/blender/makesdna/DNA_constraint_types.h +++ b/source/blender/makesdna/DNA_constraint_types.h @@ -461,6 +461,7 @@ typedef struct bObjectSolverConstraint { /* Transform matrix cache constraint */ typedef struct bTransformCacheConstraint { struct CacheFile *cache_file; + struct CacheReader *reader; char object_path[1024]; /* FILE_MAX */ } bTransformCacheConstraint; diff --git a/source/blender/makesdna/DNA_modifier_types.h b/source/blender/makesdna/DNA_modifier_types.h index 0424dc98a25..f95533a88f9 100644 --- a/source/blender/makesdna/DNA_modifier_types.h +++ b/source/blender/makesdna/DNA_modifier_types.h @@ -383,7 +383,7 @@ typedef struct DisplaceModifierData { int direction; char defgrp_name[64]; /* MAX_VGROUP_NAME */ float midlevel; - int pad; + int space; } DisplaceModifierData; /* DisplaceModifierData->direction */ @@ -404,6 +404,12 @@ enum { MOD_DISP_MAP_UV = 3, }; +/* DisplaceModifierData->space */ +enum { + MOD_DISP_SPACE_LOCAL = 0, + MOD_DISP_SPACE_GLOBAL = 1, +}; + typedef struct UVProjectModifierData { ModifierData modifier; @@ -621,6 +627,9 @@ typedef struct CollisionModifierData { unsigned int mvert_num; unsigned int tri_num; float time_x, time_xnew; /* cfra time of modifier */ + char is_static; /* collider doesn't move this frame, i.e. x[].co==xnew[].co */ + char pad[7]; + struct BVHTree *bvhtree; /* bounding volume hierarchy for this cloth object */ } CollisionModifierData; @@ -1546,6 +1555,7 @@ typedef struct MeshSeqCacheModifierData { ModifierData modifier; struct CacheFile *cache_file; + struct CacheReader *reader; char object_path[1024]; /* 1024 = FILE_MAX */ char read_flag; diff --git a/source/blender/makesdna/DNA_movieclip_types.h b/source/blender/makesdna/DNA_movieclip_types.h index 499f1c50155..56b99475909 100644 --- a/source/blender/makesdna/DNA_movieclip_types.h +++ b/source/blender/makesdna/DNA_movieclip_types.h @@ -146,6 +146,7 @@ enum { MCLIP_USE_PROXY = (1 << 0), MCLIP_USE_PROXY_CUSTOM_DIR = (1 << 1), /* MCLIP_CUSTOM_START_FRAME = (1<<2), */ /* UNUSED */ + MCLIP_DATA_EXPAND = (1 << 3), MCLIP_TIMECODE_FLAGS = (MCLIP_USE_PROXY | MCLIP_USE_PROXY_CUSTOM_DIR) }; diff --git a/source/blender/makesdna/DNA_rigidbody_types.h b/source/blender/makesdna/DNA_rigidbody_types.h index 5d76ffe57b5..381ee5d40e5 100644 --- a/source/blender/makesdna/DNA_rigidbody_types.h +++ b/source/blender/makesdna/DNA_rigidbody_types.h @@ -226,10 +226,16 @@ typedef struct RigidBodyCon { float spring_stiffness_x; float spring_stiffness_y; float spring_stiffness_z; + float spring_stiffness_ang_x; + float spring_stiffness_ang_y; + float spring_stiffness_ang_z; /* amount of velocity lost over time */ float spring_damping_x; float spring_damping_y; float spring_damping_z; + float spring_damping_ang_x; + float spring_damping_ang_y; + float spring_damping_ang_z; /* motor settings */ float motor_lin_target_velocity; /* linear velocity the motor tries to hold */ @@ -295,7 +301,11 @@ typedef enum eRigidBodyCon_Flag { RBC_FLAG_USE_SPRING_Z = (1 << 13), /* motors */ RBC_FLAG_USE_MOTOR_LIN = (1 << 14), - RBC_FLAG_USE_MOTOR_ANG = (1 << 15) + RBC_FLAG_USE_MOTOR_ANG = (1 << 15), + /* angular springs */ + RBC_FLAG_USE_SPRING_ANG_X = (1 << 16), + RBC_FLAG_USE_SPRING_ANG_Y = (1 << 17), + RBC_FLAG_USE_SPRING_ANG_Z = (1 << 18) } eRigidBodyCon_Flag; /* ******************************** */ diff --git a/source/blender/makesdna/DNA_scene_types.h b/source/blender/makesdna/DNA_scene_types.h index 9958e2f1509..80d7bffd747 100644 --- a/source/blender/makesdna/DNA_scene_types.h +++ b/source/blender/makesdna/DNA_scene_types.h @@ -135,6 +135,37 @@ typedef struct QuicktimeCodecSettings { int pad1; } QuicktimeCodecSettings; +typedef enum FFMpegPreset { + FFM_PRESET_NONE, + FFM_PRESET_ULTRAFAST, + FFM_PRESET_SUPERFAST, + FFM_PRESET_VERYFAST, + FFM_PRESET_FASTER, + FFM_PRESET_FAST, + FFM_PRESET_MEDIUM, + FFM_PRESET_SLOW, + FFM_PRESET_SLOWER, + FFM_PRESET_VERYSLOW, +} FFMpegPreset; + + +/* Mapping from easily-understandable descriptions to CRF values. + * Assumes we output 8-bit video. Needs to be remapped if 10-bit + * is output. + * We use a slightly wider than "subjectively sane range" according + * to https://trac.ffmpeg.org/wiki/Encode/H.264#a1.ChooseaCRFvalue + */ +typedef enum FFMpegCrf { + FFM_CRF_NONE = -1, + FFM_CRF_LOSSLESS = 0, + FFM_CRF_PERC_LOSSLESS = 17, + FFM_CRF_HIGH = 20, + FFM_CRF_MEDIUM = 23, + FFM_CRF_LOW = 26, + FFM_CRF_VERYLOW = 29, + FFM_CRF_LOWEST = 32, +} FFMpegCrf; + typedef struct FFMpegCodecData { int type; int codec; @@ -146,13 +177,18 @@ typedef struct FFMpegCodecData { int audio_pad; float audio_volume; int gop_size; + int max_b_frames; /* only used if FFMPEG_USE_MAX_B_FRAMES flag is set. */ int flags; + int constant_rate_factor; + int ffmpeg_preset; /* see FFMpegPreset */ int rc_min_rate; int rc_max_rate; int rc_buffer_size; int mux_packet_size; int mux_rate; + int pad1; + IDProperty *properties; } FFMpegCodecData; @@ -1155,6 +1191,14 @@ typedef enum eGP_EditBrush_Types { TOT_GP_EDITBRUSH_TYPES } eGP_EditBrush_Types; +/* Lock axis options */ +typedef enum eGP_Lockaxis_Types { + GP_LOCKAXIS_NONE = 0, + GP_LOCKAXIS_X = 1, + GP_LOCKAXIS_Y = 2, + GP_LOCKAXIS_Z = 3 +} eGP_Lockaxis_Types; + /* Settings for a GPencil Stroke Sculpting Brush */ typedef struct GP_EditBrush_Data { short size; /* radius of brush */ @@ -1185,7 +1229,7 @@ typedef struct GP_BrushEdit_Settings { int brushtype; /* eGP_EditBrush_Types */ int flag; /* eGP_BrushEdit_SettingsFlag */ - char pad[4]; + int lock_axis; /* lock drawing to one axis */ float alpha; /* alpha factor for selection color */ } GP_BrushEdit_Settings; @@ -2013,6 +2057,7 @@ enum { #endif FFMPEG_AUTOSPLIT_OUTPUT = 2, FFMPEG_LOSSLESS_OUTPUT = 4, + FFMPEG_USE_MAX_B_FRAMES = (1 << 3), }; /* Paint.flags */ diff --git a/source/blender/makesdna/DNA_smoke_types.h b/source/blender/makesdna/DNA_smoke_types.h index 76de8443faa..c95e0a1f54a 100644 --- a/source/blender/makesdna/DNA_smoke_types.h +++ b/source/blender/makesdna/DNA_smoke_types.h @@ -52,6 +52,48 @@ enum { /* viewsettings */ #define MOD_SMOKE_VIEW_SHOWBIG (1<<0) +/* slice method */ +enum { + MOD_SMOKE_SLICE_VIEW_ALIGNED = 0, + MOD_SMOKE_SLICE_AXIS_ALIGNED = 1, +}; + +/* axis aligned method */ +enum { + AXIS_SLICE_FULL = 0, + AXIS_SLICE_SINGLE = 1, +}; + +/* single slice direction */ +enum { + SLICE_AXIS_AUTO = 0, + SLICE_AXIS_X = 1, + SLICE_AXIS_Y = 2, + SLICE_AXIS_Z = 3, +}; + +enum { + VECTOR_DRAW_NEEDLE = 0, + VECTOR_DRAW_STREAMLINE = 1, +}; + +enum { + FLUID_FIELD_DENSITY = 0, + FLUID_FIELD_HEAT = 1, + FLUID_FIELD_FUEL = 2, + FLUID_FIELD_REACT = 3, + FLUID_FIELD_FLAME = 4, + FLUID_FIELD_VELOCITY_X = 5, + FLUID_FIELD_VELOCITY_Y = 6, + FLUID_FIELD_VELOCITY_Z = 7, + FLUID_FIELD_COLOR_R = 8, + FLUID_FIELD_COLOR_G = 9, + FLUID_FIELD_COLOR_B = 10, + FLUID_FIELD_FORCE_X = 11, + FLUID_FIELD_FORCE_Y = 12, + FLUID_FIELD_FORCE_Z = 13, +}; + /* cache compression */ #define SM_CACHE_LIGHT 0 #define SM_CACHE_HEAVY 1 @@ -161,6 +203,20 @@ typedef struct SmokeDomainSettings { float burning_rate, flame_smoke, flame_vorticity; float flame_ignition, flame_max_temp; float flame_smoke_color[3]; + + /* Display settings */ + char slice_method, axis_slice_method; + char slice_axis, draw_velocity; + float slice_per_voxel; + float slice_depth; + float display_thickness; + + struct ColorBand *coba; + float vector_scale; + char vector_draw_type; + char use_coba; + char coba_field; /* simulation field used for the color mapping */ + char pad2; } SmokeDomainSettings; diff --git a/source/blender/makesdna/DNA_space_types.h b/source/blender/makesdna/DNA_space_types.h index 41188c2412f..5e015544dc9 100644 --- a/source/blender/makesdna/DNA_space_types.h +++ b/source/blender/makesdna/DNA_space_types.h @@ -898,6 +898,10 @@ typedef struct SpaceImage { char dt_uvstretch; char around; + /* Filter settings when editor shows other object's UVs. */ + int other_uv_filter; + int pad2; + MaskSpaceInfo mask_info; } SpaceImage; @@ -976,6 +980,12 @@ typedef enum eSpaceImage_Flag { SI_SHOW_B = (1 << 29), } eSpaceImage_Flag; +/* SpaceImage->other_uv_filter */ +typedef enum eSpaceImage_OtherUVFilter { + SI_FILTER_SAME_IMAGE = 0, + SI_FILTER_ALL = 1, +} eSpaceImage_OtherUVFilter; + /* Text Editor ============================================ */ /* Text Editor */ diff --git a/source/blender/makesdna/DNA_userdef_types.h b/source/blender/makesdna/DNA_userdef_types.h index 02a0b414bb3..e018b66dd60 100644 --- a/source/blender/makesdna/DNA_userdef_types.h +++ b/source/blender/makesdna/DNA_userdef_types.h @@ -240,9 +240,9 @@ typedef struct ThemeSpace { char wire[4], wire_edit[4], select[4]; char lamp[4], speaker[4], empty[4], camera[4]; char active[4], group[4], group_active[4], transform[4]; - char vertex[4], vertex_select[4], vertex_unreferenced[4]; + char vertex[4], vertex_select[4], vertex_bevel[4], vertex_unreferenced[4]; char edge[4], edge_select[4]; - char edge_seam[4], edge_sharp[4], edge_facesel[4], edge_crease[4]; + char edge_seam[4], edge_sharp[4], edge_facesel[4], edge_crease[4], edge_bevel[4]; char face[4], face_select[4]; /* solid faces */ char face_dot[4]; /* selected color */ char extra_edge_len[4], extra_edge_angle[4], extra_face_angle[4], extra_face_area[4]; |