Merge branch 'master' into blende2.8
authorCampbell Barton <ideasman42@gmail.com>
Sun, 16 Dec 2018 23:25:40 +0000 (10:25 +1100)
committerCampbell Barton <ideasman42@gmail.com>
Sun, 16 Dec 2018 23:25:40 +0000 (10:25 +1100)
13 files changed:
1  2 
source/blender/makesdna/DNA_camera_types.h
source/blender/makesdna/DNA_color_types.h
source/blender/makesdna/DNA_constraint_types.h
source/blender/makesdna/DNA_image_types.h
source/blender/makesdna/DNA_lamp_types.h
source/blender/makesdna/DNA_material_types.h
source/blender/makesdna/DNA_modifier_types.h
source/blender/makesdna/DNA_node_types.h
source/blender/makesdna/DNA_object_force_types.h
source/blender/makesdna/DNA_scene_types.h
source/blender/makesdna/DNA_texture_types.h
source/blender/makesdna/DNA_view3d_types.h
source/blender/makesdna/DNA_world_types.h

@@@ -150,12 -124,8 +150,9 @@@ enum 
  #endif
        CAM_SHOWSENSOR          = (1 << 8),
        CAM_SHOW_SAFE_CENTER    = (1 << 9),
 +      CAM_SHOW_BG_IMAGE       = (1 << 10),
  };
  
- /* yafray: dof sampling switch */
- /* #define CAM_YF_NO_QMC      512 */ /* deprecated */
  /* Sensor fit */
  enum {
        CAMERA_SENSOR_FIT_AUTO  = 0,
@@@ -178,19 -184,20 +178,19 @@@ enum 
  };
  
  /* Image.tpageflag */
- //#define IMA_TILES                   1 /* Deprecated */
- //#define IMA_TWINANIM                2 /* Deprecated */
- #define IMA_COLCYCLE          4       /* Deprecated */
- #define IMA_MIPMAP_COMPLETE 8   /* all mipmap levels in OpenGL texture set? */
- //#define IMA_CLAMP_U                 16 /* Deprecated */
- //#define IMA_CLAMP_V                 32 /* Deprecated */
- #define IMA_TPAGE_REFRESH     64
- #define IMA_GLBIND_IS_DATA    128 /* opengl image texture bound as non-color data */
 -#define IMA_TILES           (1 << 0)
 -#define IMA_TWINANIM        (1 << 1)
 -#define IMA_COLCYCLE        (1 << 2)    /* Depreciated */
++//#define IMA_TILES                   (1 << 0) /* Deprecated */
++//#define IMA_TWINANIM                (1 << 1) /* Deprecated */
++#define IMA_COLCYCLE          (1 << 2)        /* Deprecated */
+ #define IMA_MIPMAP_COMPLETE (1 << 3)   /* all mipmap levels in OpenGL texture set? */
 -#define IMA_CLAMP_U         (1 << 4)
 -#define IMA_CLAMP_V         (1 << 5)
 -#define IMA_TPAGE_REFRESH   (1 << 6)
 -#define IMA_GLBIND_IS_DATA  (1 << 7) /* opengl image texture bound as non-color data */
++//#define IMA_CLAMP_U         (1 << 4) /* Deprecated */
++//#define IMA_CLAMP_V         (1 << 5) /* Deprecated */
++#define IMA_TPAGE_REFRESH     (1 << 6)
++#define IMA_GLBIND_IS_DATA    (1 << 7) /* opengl image texture bound as non-color data */
  
  /* ima->type and ima->source moved to BKE_image.h, for API */
  
  /* render */
- #define IMA_MAX_RENDER_TEXT           512
 -#define IMA_MAX_RENDER_TEXT     (1 << 9)
 -#define IMA_MAX_RENDER_SLOT     (1 << 3)
++#define IMA_MAX_RENDER_TEXT           (1 << 9)
  
  /* gen_flag */
  #define IMA_GEN_FLOAT         1
@@@ -177,18 -241,118 +177,18 @@@ typedef struct Material 
   * -1 because for active material we store the index + 1 */
  #define MAXMAT                        (32767-1)
  
 -/* material_type */
 -#define MA_TYPE_SURFACE       0
 -#define MA_TYPE_HALO  1
 -#define MA_TYPE_VOLUME        2
 -#define MA_TYPE_WIRE  3
 -
  /* flag */
                /* for render */
- #define MA_IS_USED            1
+ #define MA_IS_USED      (1 << 0)
                /* for dopesheet */
- #define MA_DS_EXPAND  2
+ #define MA_DS_EXPAND    (1 << 1)
                /* for dopesheet (texture stack expander)
                 * NOTE: this must have the same value as other texture stacks,
                 * otherwise anim-editors will not read correctly
                 */
- #define MA_DS_SHOW_TEXS       4
+ #define MA_DS_SHOW_TEXS (1 << 2)
  
 -/* mode (is int) */
 -#define MA_TRACEBLE     (1 << 0)
 -#define MA_SHADOW       (1 << 1)
 -#define MA_SHLESS       (1 << 2)
 -#define MA_WIRE         (1 << 3)            /* deprecated */
 -#define MA_VERTEXCOL    (1 << 4)
 -#define MA_HALO_SOFT    (1 << 4)
 -#define MA_HALO         (1 << 5)            /* deprecated */
 -#define MA_ZTRANSP      (1 << 6)
 -#define MA_VERTEXCOLP   (1 << 7)
 -#define MA_ZINV         (1 << 8)
 -#define MA_HALO_RINGS   (1 << 8)
 -#define MA_ENV          (1 << 9)
 -#define MA_HALO_LINES   (1 << 9)
 -#define MA_ONLYSHADOW   (1 << 10)
 -#define MA_HALO_XALPHA  (1 << 10)
 -#define MA_STAR         (1 << 11)
 -#define MA_FACETEXTURE  (1 << 11)
 -#define MA_HALOTEX      (1 << 12)
 -#define MA_HALOPUNO     (1 << 13)
 -#define MA_ONLYCAST     (1 << 13)
 -#define MA_NOMIST       (1 << 14)
 -#define MA_HALO_SHADE   (1 << 14)
 -#define MA_HALO_FLARE   (1 << 15)
 -#define MA_TRANSP       (1 << 16)
 -#define MA_RAYTRANSP    (1 << 17)
 -#define MA_RAYMIRROR    (1 << 18)
 -#define MA_SHADOW_TRA   (1 << 19)
 -#define MA_RAMP_COL     (1 << 20)
 -#define MA_RAMP_SPEC    (1 << 21)
 -#define MA_RAYBIAS      (1 << 22)
 -#define MA_FULL_OSA     (1 << 23)
 -#define MA_TANGENT_STR  (1 << 24)
 -#define MA_SHADBUF      (1 << 25)
 -              /* note; we drop MA_TANGENT_STR later to become tangent_u */
 -#define MA_TANGENT_V    (1 << 26)
 -/* qdn: a bit clumsy this, tangents needed for normal maps separated from shading */
 -#define MA_NORMAP_TANG  (1 << 27)
 -#define MA_GROUP_NOLAY  (1 << 28)
 -#define MA_FACETEXTURE_ALPHA    (1 << 29)
 -#define MA_STR_B_UNITS  (1 << 30)
 -#define MA_STR_SURFDIFF (1 << 31u)
 -
 -#define MA_MODE_MASK    (((1 << 31u) - 1) & ~(1 << 28u)) /* all valid mode bits */
 -#define MA_MODE_PIPELINE      (MA_TRANSP | MA_ZTRANSP | MA_RAYTRANSP \
 -                               | MA_TRACEBLE | MA_FULL_OSA | MA_ENV | MA_ZINV \
 -                               | MA_ONLYCAST | MA_SHADBUF)
 -
 -/* mode2 (is int) */
 -#define MA_CASTSHADOW         (1 << 0)
 -#define MA_MODE2_PIPELINE     (MA_CASTSHADOW)
 -#define MA_TANGENT_CONCRETE   (1 << 1)
 -
 -/* mapflag */
 -#define MA_MAPFLAG_UVPROJECT (1 << 0)
 -
 -/* ray mirror fadeout */
 -#define MA_RAYMIR_FADETOSKY   0
 -#define MA_RAYMIR_FADETOMAT   1
 -
 -/* shadowonly_flag */
 -#define MA_SO_OLD                     0
 -#define MA_SO_SHADOW          1
 -#define MA_SO_SHADED          2
 -
 -/* shade_flag */
 -#define MA_CUBIC                      1
 -#define MA_OBCOLOR                    2
 -#define MA_APPROX_OCCLUSION   4
 -#define MA_GROUP_LOCAL      8
 -
 -/* diff_shader */
 -#define MA_DIFF_LAMBERT               0
 -#define MA_DIFF_ORENNAYAR     1
 -#define MA_DIFF_TOON          2
 -#define MA_DIFF_MINNAERT    3
 -#define MA_DIFF_FRESNEL     4
 -
 -/* spec_shader */
 -#define MA_SPEC_COOKTORR      0
 -#define MA_SPEC_PHONG         1
 -#define MA_SPEC_BLINN         2
 -#define MA_SPEC_TOON          3
 -#define MA_SPEC_WARDISO               4
 -
 -/* dynamode */
 -// #define MA_DRAW_DYNABUTS    1              /* deprecated */
 -#define MA_FH_NOR             2
 -
  /* ramps */
 -#define MA_RAMP_IN_SHADER     0
 -#define MA_RAMP_IN_ENERGY     1
 -#define MA_RAMP_IN_NOR                2
 -#define MA_RAMP_IN_RESULT     3
 -
  #define MA_RAMP_BLEND         0
  #define MA_RAMP_ADD                   1
  #define MA_RAMP_MULT          2
  #define MA_RAMP_LINEAR      17
  
  /* texco */
- #define TEXCO_ORCO            1
- #define TEXCO_REFL            2
- #define TEXCO_NORM            4
- #define TEXCO_GLOB            8
- #define TEXCO_UV              16
- #define TEXCO_OBJECT  32
- #define TEXCO_LAVECTOR        64
- #define TEXCO_VIEW            128
- #define TEXCO_STICKY_ 256  // DEPRECATED
- #define TEXCO_OSA             512
- #define TEXCO_WINDOW  1024
- #define NEED_UV                       2048
- #define TEXCO_TANGENT 4096
+ #define TEXCO_ORCO      (1 << 0)
+ #define TEXCO_REFL      (1 << 1)
+ #define TEXCO_NORM      (1 << 2)
+ #define TEXCO_GLOB      (1 << 3)
+ #define TEXCO_UV        (1 << 4)
+ #define TEXCO_OBJECT    (1 << 5)
+ #define TEXCO_LAVECTOR  (1 << 6)
+ #define TEXCO_VIEW      (1 << 7)
+ #define TEXCO_STICKY_   (1 << 8)  // DEPRECATED
+ #define TEXCO_OSA       (1 << 9)
+ #define TEXCO_WINDOW    (1 << 10)
+ #define NEED_UV         (1 << 11)
+ #define TEXCO_TANGENT   (1 << 12)
        /* still stored in vertex->accum, 1 D */
- #define TEXCO_STRAND  8192
- #define TEXCO_PARTICLE        8192 /* strand is used for normal materials, particle for halo materials */
- #define TEXCO_STRESS  16384
- #define TEXCO_SPEED           32768
+ #define TEXCO_STRAND    (1 << 13)
+ #define TEXCO_PARTICLE  (1 << 13) /* strand is used for normal materials, particle for halo materials */
+ #define TEXCO_STRESS    (1 << 14)
+ #define TEXCO_SPEED     (1 << 15)
  
  /* mapto */
- #define MAP_COL                       1
- #define MAP_ALPHA             128
 -#define MAP_COL         (1 << 0)
 -#define MAP_NORM        (1 << 1)
 -#define MAP_COLSPEC     (1 << 2)
 -#define MAP_COLMIR      (1 << 3)
 -#define MAP_VARS        (((1 << 16) - 1) & ~((1 << 4) - 1))
 -#define MAP_REF         (1 << 4)
 -#define MAP_SPEC        (1 << 5)
 -#define MAP_EMIT        (1 << 6)
 -#define MAP_ALPHA       (1 << 7)
 -#define MAP_HAR         (1 << 8)
 -#define MAP_RAYMIRR     (1 << 9)
 -#define MAP_TRANSLU     (1 << 10)
 -#define MAP_AMB         (1 << 11)
 -#define MAP_DISPLACE    (1 << 12)
 -#define MAP_WARP        (1 << 13)
 -// #define MAP_LAYER    (1 << 14)       /* unused */
 -
 -/* volume mapto - reuse definitions for now - a bit naughty! */
 -#define MAP_DENSITY             (1 << 7)
 -#define MAP_EMISSION            (1 << 6)
 -#define MAP_EMISSION_COL        (1 << 0)
 -#define MAP_SCATTERING          (1 << 4)
 -#define MAP_TRANSMISSION_COL    (1 << 3)
 -#define MAP_REFLECTION_COL      (1 << 2)
 -#define MAP_REFLECTION          (1 << 5)
 -
 -
 -/* mapto for halo */
 -//#define MAP_HA_COL        (1 << 0)
 -//#define MAP_HA_ALPHA      (1 << 7)
 -//#define MAP_HA_HAR        (1 << 8)
 -//#define MAP_HA_SIZE       (1 << 1)
 -//#define MAP_HA_ADD        (1 << 6)
++#define MAP_COL                       (1 << 0)
++#define MAP_ALPHA             (1 << 7)
  
  /* pmapto */
  /* init */
@@@ -414,13 -411,12 +414,13 @@@ typedef struct bNodeTree 
  #define NTREE_TYPE_INIT               1
  
  /* ntree->flag */
- #define NTREE_DS_EXPAND                               1       /* for animation editors */
- #define NTREE_COM_OPENCL                      2       /* use opencl */
- #define NTREE_TWO_PASS                                4       /* two pass */
- #define NTREE_COM_GROUPNODE_BUFFER    8       /* use groupnode buffers */
- #define NTREE_VIEWER_BORDER                   16      /* use a border for viewer nodes */
 -#define NTREE_DS_EXPAND             (1 << 0)    /* for animation editors */
 -#define NTREE_COM_OPENCL            (1 << 1)    /* use opencl */
 -#define NTREE_TWO_PASS              (1 << 2)    /* two pass */
 -#define NTREE_COM_GROUPNODE_BUFFER  (1 << 3)    /* use groupnode buffers */
 -#define NTREE_VIEWER_BORDER         (1 << 4)    /* use a border for viewer nodes */
 -#define NTREE_IS_LOCALIZED          (1 << 5)    /* tree is localized copy, free when deleting node groups */
++#define NTREE_DS_EXPAND                               (1 << 0)        /* for animation editors */
++#define NTREE_COM_OPENCL                      (1 << 1)        /* use opencl */
++#define NTREE_TWO_PASS                                (1 << 2)        /* two pass */
++#define NTREE_COM_GROUPNODE_BUFFER    (1 << 3)        /* use groupnode buffers */
++#define NTREE_VIEWER_BORDER                   (1 << 4)        /* use a border for viewer nodes */
 +/* NOTE: DEPRECATED, use (id->tag & LIB_TAG_LOCALIZED) instead. */
- /*#define NTREE_IS_LOCALIZED                  32*/    /* tree is localized copy, free when deleting node groups */
++/* #define NTREE_IS_LOCALIZED                 (1 << 5) */     /* tree is localized copy, free when deleting node groups */
  
  /* XXX not nice, but needed as a temporary flags
   * for group updates after library linking.
@@@ -319,29 -352,27 +319,29 @@@ typedef struct SoftBody 
  
  
  /* pd->flag: various settings */
- #define PFIELD_USEMAX                 1
- /*#define PDEFLE_DEFORM                       2*/                     /*UNUSED*/
- #define PFIELD_GUIDE_PATH_ADD 4                       /* TODO: do_versions for below */
- #define PFIELD_PLANAR                 8                       /* used for do_versions */
- #define PDEFLE_KILL_PART              16
- #define PFIELD_POSZ                           32                      /* used for do_versions */
- #define PFIELD_TEX_OBJECT             64
- #define PFIELD_GLOBAL_CO              64                      /* used for turbulence */
- #define PFIELD_TEX_2D                 128
- #define PFIELD_MULTIPLE_SPRINGS       128                     /* used for harmonic force */
- #define PFIELD_USEMIN                 256
- #define PFIELD_USEMAXR                        512
- #define PFIELD_USEMINR                        1024
- #define PFIELD_TEX_ROOTCO             2048
- #define PFIELD_SURFACE                        (1<<12)         /* used for do_versions */
- #define PFIELD_VISIBILITY             (1<<13)
- #define PFIELD_DO_LOCATION            (1<<14)
- #define PFIELD_DO_ROTATION            (1<<15)
- #define PFIELD_GUIDE_PATH_WEIGHT (1<<16)      /* apply curve weights */
- #define PFIELD_SMOKE_DENSITY    (1<<17)               /* multiply smoke force by density */
- #define PFIELD_GRAVITATION            (1<<18)             /* used for (simple) force */
- #define PFIELD_CLOTH_USE_CULLING (1<<19)      /* Enable cloth collision side detection based on normal. */
- #define PFIELD_CLOTH_USE_NORMAL (1<<20)               /* Replace collision direction with collider normal. */
+ #define PFIELD_USEMAX           (1 << 0)
+ /*#define PDEFLE_DEFORM         (1 << 1)*/      /*UNUSED*/
+ #define PFIELD_GUIDE_PATH_ADD   (1 << 2)        /* TODO: do_versions for below */
+ #define PFIELD_PLANAR           (1 << 3)        /* used for do_versions */
+ #define PDEFLE_KILL_PART        (1 << 4)
+ #define PFIELD_POSZ             (1 << 5)        /* used for do_versions */
+ #define PFIELD_TEX_OBJECT       (1 << 6)
+ #define PFIELD_GLOBAL_CO        (1 << 6)        /* used for turbulence */
+ #define PFIELD_TEX_2D           (1 << 7)
+ #define PFIELD_MULTIPLE_SPRINGS (1 << 7)        /* used for harmonic force */
+ #define PFIELD_USEMIN           (1 << 8)
+ #define PFIELD_USEMAXR          (1 << 9)
+ #define PFIELD_USEMINR          (1 << 10)
+ #define PFIELD_TEX_ROOTCO       (1 << 11)
+ #define PFIELD_SURFACE          (1 << 12)       /* used for do_versions */
+ #define PFIELD_VISIBILITY       (1 << 13)
+ #define PFIELD_DO_LOCATION      (1 << 14)
+ #define PFIELD_DO_ROTATION      (1 << 15)
+ #define PFIELD_GUIDE_PATH_WEIGHT (1 << 16)      /* apply curve weights */
+ #define PFIELD_SMOKE_DENSITY    (1 << 17)       /* multiply smoke force by density */
 -#define PFIELD_GRAVITATION      (1 << 18)       /* used for (simple) force */
++#define PFIELD_GRAVITATION      (1 << 18)             /* used for (simple) force */
++#define PFIELD_CLOTH_USE_CULLING (1<< 19)       /* Enable cloth collision side detection based on normal. */
++#define PFIELD_CLOTH_USE_NORMAL (1 << 20)       /* Replace collision direction with collider normal. */
  
  /* pd->falloff */
  #define PFIELD_FALL_SPHERE            0
@@@ -1624,41 -1737,41 +1624,41 @@@ typedef struct Scene 
  #define SCER_SHOW_SUBFRAME    (1<<3)
  
  /* RenderData.mode */
- #define R_OSA                 0x0001
- /* #define R_SHADOW           0x0002 */
- /* #define R_GAMMA            0x0004 */
- /* #define R_ORTHO            0x0008 */
- /* #define R_ENVMAP           0x0010 */
- /* #define R_EDGE             0x0020 */
- /* #define R_FIELDS           0x0040 */
- /*#define R_FIELDSTILL        0x0080 */
- /*#define R_RADIO             0x0100 */ /* deprecated */
- #define R_BORDER              0x0200
- #define R_PANORAMA            0x0400 /* deprecated */
- #define R_CROP                        0x0800
 -#define R_OSA                 (1 << 0)
 -#define R_SHADOW              (1 << 1)
 -#define R_GAMMA                       (1 << 2)
 -#define R_ORTHO                       (1 << 3)
 -#define R_ENVMAP              (1 << 4)
 -#define R_EDGE                        (1 << 5)
 -#define R_FIELDS              (1 << 6)
 -#define R_FIELDSTILL  (1 << 7)
 -/*#define R_RADIO                     (1 << 8) */ /* deprecated */
 -#define R_BORDER              (1 << 9)
 -#define R_PANORAMA            (1 << 10)       /* deprecated as scene option, still used in renderer */
 -#define R_CROP                        (1 << 11)
++#define R_OSA           (1 << 0)
++/* #define R_SHADOW     (1 << 1) */
++/* #define R_GAMMA      (1 << 2) */
++/* #define R_ORTHO      (1 << 3) */
++/* #define R_ENVMAP     (1 << 4) */
++/* #define R_EDGE       (1 << 5) */
++/* #define R_FIELDS     (1 << 6) */
++/*#define R_FIELDSTILL  (1 << 7) */
++/*#define R_RADIO       (1 << 8) */ /* deprecated */
++#define R_BORDER        (1 << 9)
++#define R_PANORAMA      (1 << 10) /* deprecated */
++#define R_CROP          (1 << 11)
                /* Disable camera switching: runtime (DURIAN_CAMERA_SWITCH) */
- #define R_NO_CAMERA_SWITCH    0x1000
- /* #define R_ODDFIELD         0x2000 */
- #define R_MBLUR                       0x4000
 -#define R_NO_CAMERA_SWITCH    (1 << 12)
 -#define R_ODDFIELD            (1 << 13)
 -#define R_MBLUR                       (1 << 14)
++#define R_NO_CAMERA_SWITCH  (1 << 12)
++/* #define R_ODDFIELD       (1 << 13) */
++#define R_MBLUR         (1 << 14)
                /* unified was here */
- /* #define R_RAYTRACE      0x10000 */
 -#define R_RAYTRACE      (1 << 16)
++/* #define R_RAYTRACE      (1 << 16) */
                /* R_GAUSS is obsolete, but used to retrieve setting from old files */
- /* #define R_GAUSS            0x20000 */
 -#define R_GAUSS       (1 << 17)
++/* #define R_GAUSS          (1 << 17) */
                /* fbuf obsolete... */
- /*#define R_FBUF                      0x40000*/
 -/*#define R_FBUF                      (1 << 18)*/
++/*#define R_FBUF            (1 << 18)*/
                /* threads obsolete... is there for old files, now use for autodetect threads */
- #define R_THREADS             0x80000
 -#define R_THREADS             (1 << 19)
++#define R_THREADS       (1 << 19)
                /* Use the same flag for autothreads */
- #define R_FIXED_THREADS               0x80000
 -#define R_FIXED_THREADS               (1 << 19)
++#define R_FIXED_THREADS     (1 << 19)
  
- /* #define R_SPEED                            0x100000 */
- /* #define R_SSS                              0x200000 */
- #define R_NO_OVERWRITE                0x400000  /* skip existing files */
- #define R_TOUCH                               0x800000  /* touch files before rendering */
- #define R_SIMPLIFY                    0x1000000
- #define R_EDGE_FRS                    0x2000000 /* R_EDGE reserved for Freestyle */
- #define R_PERSISTENT_DATA     0x4000000 /* keep data around for re-render */
- /* #define R_USE_WS_SHADING   0x8000000 */ /* use world space interpretation of lighting data */
 -#define R_SPEED                               (1 << 20)
 -#define R_SSS                         (1 << 21)
 -#define R_NO_OVERWRITE                (1 << 22)  /* skip existing files */
 -#define R_TOUCH                               (1 << 23)  /* touch files before rendering */
 -#define R_SIMPLIFY                    (1 << 24)
 -#define R_EDGE_FRS                    (1 << 25) /* R_EDGE reserved for Freestyle */
 -#define R_PERSISTENT_DATA     (1 << 26) /* keep data around for re-render */
 -#define R_USE_WS_SHADING      (1 << 27) /* use world space interpretation of lighting data */
++/* #define R_SPEED              (1 << 20) */
++/* #define R_SSS                (1 << 21) */
++#define R_NO_OVERWRITE      (1 << 22)  /* skip existing files */
++#define R_TOUCH             (1 << 23)  /* touch files before rendering */
++#define R_SIMPLIFY          (1 << 24)
++#define R_EDGE_FRS          (1 << 25) /* R_EDGE reserved for Freestyle */
++#define R_PERSISTENT_DATA   (1 << 26) /* keep data around for re-render */
++/* #define R_USE_WS_SHADING (1 << 27) */ /* use world space interpretation of lighting data */
  
  /* RenderData.seq_flag */
  enum {
  #define R_FILTER_CATROM       4
  #define R_FILTER_GAUSS        5
  #define R_FILTER_MITCH        6
 -#define R_FILTER_FAST_GAUSS   7 /* note, this is only used for nodes at the moment */
 -
 -/* RenderData.raytrace_structure */
 -#define R_RAYSTRUCTURE_AUTO                           0
 -#define R_RAYSTRUCTURE_OCTREE                 1
 -#define R_RAYSTRUCTURE_BLIBVH                 2       /* removed */
 -#define R_RAYSTRUCTURE_VBVH                           3
 -#define R_RAYSTRUCTURE_SIMD_SVBVH             4       /* needs SIMD */
 -#define R_RAYSTRUCTURE_SIMD_QBVH              5       /* needs SIMD */
 -
 -/* RenderData.raytrace_options */
 -#define R_RAYTRACE_USE_LOCAL_COORDS           (1 << 0)
 -#define R_RAYTRACE_USE_INSTANCES              (1 << 1)
 +#define R_FILTER_FAST_GAUSS   7
  
  /* RenderData.scemode (int now) */
- #define R_DOSEQ                               0x0001
- #define R_BG_RENDER                   0x0002
+ #define R_DOSEQ             (1 << 0)
+ #define R_BG_RENDER         (1 << 1)
                /* passepartout is camera option now, keep this for backward compatibility */
- #define R_PASSEPARTOUT                0x0004
- #define R_BUTS_PREVIEW                0x0008
- #define R_EXTENSION                   0x0010
- #define R_MATNODE_PREVIEW     0x0020
- #define R_DOCOMP                      0x0040
- #define R_COMP_CROP                   0x0080
- /* #define R_FREE_IMAGE               0x0100 */
- #define R_SINGLE_LAYER                0x0200
- #define R_EXR_TILE_FILE               0x0400
- /* #define R_COMP_FREE                        0x0800 */
- #define R_NO_IMAGE_LOAD               0x1000
- /* #define R_NO_TEX                   0x2000 */
- #define R_NO_FRAME_UPDATE     0x4000
- #define R_FULL_SAMPLE         0x8000
- /* #define R_DEPRECATED               0x10000 */
- /* #define R_RECURS_PROTECTION        0x20000 */
- #define R_TEXNODE_PREVIEW     0x40000
- /* #define R_VIEWPORT_PREVIEW 0x80000 */
- #define R_EXR_CACHE_FILE      0x100000
- #define R_MULTIVIEW                   0x200000
 -#define R_PASSEPARTOUT      (1 << 2)
 -#define R_BUTS_PREVIEW      (1 << 3)
 -#define R_EXTENSION         (1 << 4)
 -#define R_MATNODE_PREVIEW   (1 << 5)
 -#define R_DOCOMP            (1 << 6)
 -#define R_COMP_CROP         (1 << 7)
 -#define R_FREE_IMAGE        (1 << 8)
 -#define R_SINGLE_LAYER      (1 << 9)
 -#define R_EXR_TILE_FILE     (1 << 10)
 -/* #define R_COMP_FREE          (1 << 11) */
 -#define R_NO_IMAGE_LOAD     (1 << 12)
 -#define R_NO_TEX            (1 << 13)
 -#define R_NO_FRAME_UPDATE   (1 << 14)
 -#define R_FULL_SAMPLE       (1 << 15)
 -/* #define R_DEPRECATED     (1 << 16) */
 -/* #define R_RECURS_PROTECTION  (1 << 17) */
 -#define R_TEXNODE_PREVIEW   (1 << 18)
 -#define R_VIEWPORT_PREVIEW  (1 << 19)
 -#define R_EXR_CACHE_FILE    (1 << 20)
 -#define R_MULTIVIEW         (1 << 21)
++#define R_PASSEPARTOUT                (1 << 2)
++#define R_BUTS_PREVIEW                (1 << 3)
++#define R_EXTENSION                   (1 << 4)
++#define R_MATNODE_PREVIEW     (1 << 5)
++#define R_DOCOMP                      (1 << 6)
++#define R_COMP_CROP                   (1 << 7)
++/* #define R_FREE_IMAGE               (1 << 8) */
++#define R_SINGLE_LAYER                (1 << 9)
++#define R_EXR_TILE_FILE               (1 << 10)
++/* #define R_COMP_FREE                        (1 << 11) */
++#define R_NO_IMAGE_LOAD               (1 << 12)
++/* #define R_NO_TEX                   (1 << 13) */
++#define R_NO_FRAME_UPDATE     (1 << 14)
++#define R_FULL_SAMPLE         (1 << 15)
++/* #define R_DEPRECATED               (1 << 16) */
++/* #define R_RECURS_PROTECTION        (1 << 17) */
++#define R_TEXNODE_PREVIEW     (1 << 18)
++/* #define R_VIEWPORT_PREVIEW (1 << 19) */
++#define R_EXR_CACHE_FILE      (1 << 20)
++#define R_MULTIVIEW                   (1 << 21)
  
  /* RenderData.stamp */
- #define R_STAMP_TIME  0x0001
- #define R_STAMP_FRAME 0x0002
- #define R_STAMP_DATE  0x0004
- #define R_STAMP_CAMERA        0x0008
- #define R_STAMP_SCENE 0x0010
- #define R_STAMP_NOTE  0x0020
- #define R_STAMP_DRAW  0x0040 /* draw in the image */
- #define R_STAMP_MARKER        0x0080
- #define R_STAMP_FILENAME      0x0100
- #define R_STAMP_SEQSTRIP      0x0200
- #define R_STAMP_RENDERTIME    0x0400
- #define R_STAMP_CAMERALENS    0x0800
- #define R_STAMP_STRIPMETA     0x1000
- #define R_STAMP_MEMORY                0x2000
- #define R_STAMP_HIDE_LABELS   0x4000
- #define R_STAMP_FRAME_RANGE   0x8000
- #define R_STAMP_HOSTNAME      0x10000
 -#define R_STAMP_TIME        (1 << 0)
 -#define R_STAMP_FRAME       (1 << 1)
 -#define R_STAMP_DATE        (1 << 2)
 -#define R_STAMP_CAMERA      (1 << 3)
 -#define R_STAMP_SCENE       (1 << 4)
 -#define R_STAMP_NOTE        (1 << 5)
 -#define R_STAMP_DRAW        (1 << 6) /* draw in the image */
 -#define R_STAMP_MARKER      (1 << 7)
 -#define R_STAMP_FILENAME    (1 << 8)
 -#define R_STAMP_SEQSTRIP    (1 << 9)
 -#define R_STAMP_RENDERTIME  (1 << 10)
 -#define R_STAMP_CAMERALENS  (1 << 11)
 -#define R_STAMP_STRIPMETA   (1 << 12)
 -#define R_STAMP_MEMORY      (1 << 13)
 -#define R_STAMP_HIDE_LABELS (1 << 14)
 -#define R_STAMP_FRAME_RANGE (1 << 15)
++#define R_STAMP_TIME  (1 << 0)
++#define R_STAMP_FRAME (1 << 1)
++#define R_STAMP_DATE  (1 << 2)
++#define R_STAMP_CAMERA        (1 << 3)
++#define R_STAMP_SCENE (1 << 4)
++#define R_STAMP_NOTE  (1 << 5)
++#define R_STAMP_DRAW  (1 << 6) /* draw in the image */
++#define R_STAMP_MARKER        (1 << 7)
++#define R_STAMP_FILENAME      (1 << 8)
++#define R_STAMP_SEQSTRIP      (1 << 9)
++#define R_STAMP_RENDERTIME    (1 << 10)
++#define R_STAMP_CAMERALENS    (1 << 11)
++#define R_STAMP_STRIPMETA     (1 << 12)
++#define R_STAMP_MEMORY                (1 << 13)
++#define R_STAMP_HIDE_LABELS   (1 << 14)
++#define R_STAMP_FRAME_RANGE   (1 << 15)
++#define R_STAMP_HOSTNAME      (1 << 16)
  #define R_STAMP_ALL (R_STAMP_TIME|R_STAMP_FRAME|R_STAMP_DATE|R_STAMP_CAMERA|R_STAMP_SCENE| \
                       R_STAMP_NOTE|R_STAMP_MARKER|R_STAMP_FILENAME|R_STAMP_SEQSTRIP|        \
                       R_STAMP_RENDERTIME|R_STAMP_CAMERALENS|R_STAMP_MEMORY|                 \
@@@ -1763,17 -1887,17 +1763,17 @@@ enum 
  
  /* bake_mode: same as RE_BAKE_xxx defines */
  /* RenderData.bake_flag */
- #define R_BAKE_CLEAR          1
- /* #define R_BAKE_OSA         2 */ /* deprecated */
- #define R_BAKE_TO_ACTIVE      4
- /* #define R_BAKE_NORMALIZE   8 */ /* deprecated */
- #define R_BAKE_MULTIRES               16
- #define R_BAKE_LORES_MESH     32
- /* #define R_BAKE_VCOL                64 */ /* deprecated */
- #define R_BAKE_USERSCALE      128
- #define R_BAKE_CAGE                   256
- #define R_BAKE_SPLIT_MAT      512
- #define R_BAKE_AUTO_NAME      1024
+ #define R_BAKE_CLEAR        (1 << 0)
 -#define R_BAKE_OSA          (1 << 1)
++/* #define R_BAKE_OSA       (1 << 1) */ /* deprecated */
+ #define R_BAKE_TO_ACTIVE    (1 << 2)
 -#define R_BAKE_NORMALIZE    (1 << 3)
++/* #define R_BAKE_NORMALIZE (1 << 3) */ /* deprecated */
+ #define R_BAKE_MULTIRES     (1 << 4)
+ #define R_BAKE_LORES_MESH   (1 << 5)
 -#define R_BAKE_VCOL         (1 << 6)
++/* #define R_BAKE_VCOL      (1 << 6) */ /* deprecated */
+ #define R_BAKE_USERSCALE    (1 << 7)
+ #define R_BAKE_CAGE         (1 << 8)
+ #define R_BAKE_SPLIT_MAT    (1 << 9)
+ #define R_BAKE_AUTO_NAME    (1 << 10)
  
  /* RenderData.bake_normal_space */
  #define R_BAKE_SPACE_CAMERA    0
@@@ -1875,46 -1985,34 +1875,46 @@@ extern const char *RE_engine_id_CYCLES
  
  /* Base.flag is in DNA_object_types.h */
  
 +/* ToolSettings.transform_flag */
 +enum {
 +      SCE_XFORM_AXIS_ALIGN = (1 << 0),
 +};
 +
 +/* ToolSettings.object_flag */
 +enum {
 +      SCE_OBJECT_MODE_LOCK = (1 << 0),
 +};
 +
  /* ToolSettings.snap_flag */
- #define SCE_SNAP                              1
- #define SCE_SNAP_ROTATE                       2
- #define SCE_SNAP_PEEL_OBJECT  4
- #define SCE_SNAP_PROJECT              8
- #define SCE_SNAP_NO_SELF              16
- #define SCE_SNAP_ABS_GRID             32
+ #define SCE_SNAP                              (1 << 0)
+ #define SCE_SNAP_ROTATE                       (1 << 1)
+ #define SCE_SNAP_PEEL_OBJECT  (1 << 2)
+ #define SCE_SNAP_PROJECT              (1 << 3)
+ #define SCE_SNAP_NO_SELF              (1 << 4)
+ #define SCE_SNAP_ABS_GRID             (1 << 5)
  
  /* ToolSettings.snap_target */
  #define SCE_SNAP_TARGET_CLOSEST       0
  #define SCE_SNAP_TARGET_CENTER        1
  #define SCE_SNAP_TARGET_MEDIAN        2
  #define SCE_SNAP_TARGET_ACTIVE        3
 +
  /* ToolSettings.snap_mode */
 -#define SCE_SNAP_MODE_INCREMENT       0
 -#define SCE_SNAP_MODE_VERTEX  1
 -#define SCE_SNAP_MODE_EDGE            2
 -#define SCE_SNAP_MODE_FACE            3
 -#define SCE_SNAP_MODE_VOLUME  4
 -#define SCE_SNAP_MODE_NODE_X  5
 -#define SCE_SNAP_MODE_NODE_Y  6
 -#define SCE_SNAP_MODE_NODE_XY 7
 -#define SCE_SNAP_MODE_GRID            8
 +#define SCE_SNAP_MODE_VERTEX    (1 << 0)
 +#define SCE_SNAP_MODE_EDGE      (1 << 1)
 +#define SCE_SNAP_MODE_FACE      (1 << 2)
 +#define SCE_SNAP_MODE_VOLUME    (1 << 3)
 +#define SCE_SNAP_MODE_INCREMENT (1 << 4)
 +
 +/* ToolSettings.snap_node_mode */
 +#define SCE_SNAP_MODE_GRID      (1 << 5)
 +#define SCE_SNAP_MODE_NODE_X    (1 << 6)
 +#define SCE_SNAP_MODE_NODE_Y    (1 << 7)
  
  /* ToolSettings.selectmode */
- #define SCE_SELECT_VERTEX     1 /* for mesh */
- #define SCE_SELECT_EDGE               2
- #define SCE_SELECT_FACE               4
+ #define SCE_SELECT_VERTEX     (1 << 0) /* for mesh */
+ #define SCE_SELECT_EDGE               (1 << 1)
+ #define SCE_SELECT_FACE               (1 << 2)
  
  /* MeshStatVis.type */
  #define SCE_STATVIS_OVERHANG  0
@@@ -2167,25 -2236,17 +2167,25 @@@ typedef enum eGPencil_Placement_Flags 
  
        /* "Use Endpoints" */
        GP_PROJECT_DEPTH_STROKE_ENDPOINTS = (1 << 4),
 +      GP_PROJECT_CURSOR = (1 << 5),
 +      GP_PROJECT_DEPTH_STROKE_FIRST = (1 << 6),
  } eGPencil_Placement_Flags;
  
 +/* ToolSettings.gpencil_selectmode */
 +typedef enum eGPencil_Selectmode_types {
 +      GP_SELECTMODE_POINT  = 0,
 +      GP_SELECTMODE_STROKE = 1
 +} eGPencil_Selectmode_types;
 +
  /* ToolSettings.particle flag */
- #define PE_KEEP_LENGTHS                       1
- #define PE_LOCK_FIRST                 2
- #define PE_DEFLECT_EMITTER            4
- #define PE_INTERPOLATE_ADDED  8
- #define PE_DRAW_PART                  16
- /* #define PE_X_MIRROR                        64 */   /* deprecated */
- #define PE_FADE_TIME                  128
- #define PE_AUTO_VELOCITY              256
+ #define PE_KEEP_LENGTHS         (1 << 0)
+ #define PE_LOCK_FIRST           (1 << 1)
+ #define PE_DEFLECT_EMITTER      (1 << 2)
+ #define PE_INTERPOLATE_ADDED    (1 << 3)
+ #define PE_DRAW_PART            (1 << 4)
+ /* #define PE_X_MIRROR          (1 << 6) */ /* deprecated */
+ #define PE_FADE_TIME            (1 << 7)
+ #define PE_AUTO_VELOCITY        (1 << 8)
  
  /* ParticleEditSettings.brushtype */
  #define PE_BRUSH_NONE         -1
@@@ -319,12 -372,12 +319,12 @@@ typedef struct ColorMapping 
  
  /* imaflag unused, only for version check */
  #ifdef DNA_DEPRECATED_ALLOW
- // #define TEX_FIELDS_                8
- #define TEX_ANIMCYCLIC_       64
- #define TEX_ANIM5_            128
- #define TEX_ANTIALI_  256
- #define TEX_ANTISCALE_        512
- #define TEX_STD_FIELD_        1024
 -#define TEX_FIELDS_           (1 << 3)
 -#define TEX_ANIMCYCLIC_       (1 << 6)
 -#define TEX_ANIM5_            (1 << 7)
 -#define TEX_ANTIALI_  (1 << 8)
 -#define TEX_ANTISCALE_        (1 << 9)
 -#define TEX_STD_FIELD_        (1 << 10)
++// #define TEX_FIELDS_      (1 << 3)
++#define TEX_ANIMCYCLIC_     (1 << 6)
++#define TEX_ANIM5_          (1 << 7)
++#define TEX_ANTIALI_        (1 << 8)
++#define TEX_ANTISCALE_      (1 << 9)
++#define TEX_STD_FIELD_      (1 << 10)
  #endif
  
  /* flag */
@@@ -306,16 -251,16 +306,16 @@@ typedef struct View3D 
  #define V3D_S3D_DISPVOLUME            (1 << 2)
  
  /* View3D->flag (short) */
 -/*#define V3D_DISPIMAGE     (1 << 0) */ /*UNUSED*/
 -#define V3D_DISPBGPICS      (1 << 1)
 +/*#define V3D_FLAG_DEPRECATED_1 (1 << 0) */ /*UNUSED */
 +/*#define V3D_FLAG_DEPRECATED_2 (1 << 1) */ /* UNUSED */
- #define V3D_HIDE_HELPLINES    4
- #define V3D_INVALID_BACKBUF   8
+ #define V3D_HIDE_HELPLINES  (1 << 2)
+ #define V3D_INVALID_BACKBUF (1 << 3)
  
 -#define V3D_ALIGN           (1 << 10)
 +/* #define V3D_FLAG_DEPRECATED_10 (1 << 10) */ /* UNUSED */
- #define V3D_SELECT_OUTLINE    2048
- #define V3D_ZBUF_SELECT               4096   /* XXX: DNA deprecated */
- #define V3D_GLOBAL_STATS      8192
- #define V3D_DRAW_CENTERS      32768
+ #define V3D_SELECT_OUTLINE  (1 << 11)
 -#define V3D_ZBUF_SELECT     (1 << 12)
++#define V3D_ZBUF_SELECT     (1 << 12)   /* XXX: DNA deprecated */
+ #define V3D_GLOBAL_STATS    (1 << 13)
+ #define V3D_DRAW_CENTERS    (1 << 15)
  
  /* RegionView3d->persp */
  #define RV3D_ORTHO                            0
  #define RV3D_CAMOB                            2
  
  /* RegionView3d->rflag */
- #define RV3D_CLIPPING                         4
- #define RV3D_NAVIGATING                               8
- #define RV3D_GPULIGHT_UPDATE          16
- /*#define RV3D_IS_GAME_ENGINE                 32 *//* UNUSED */
+ #define RV3D_CLIPPING               (1 << 2)
+ #define RV3D_NAVIGATING             (1 << 3)
+ #define RV3D_GPULIGHT_UPDATE        (1 << 4)
 -#define RV3D_IS_GAME_ENGINE         (1 << 5)  /* runtime flag, used to check if LoD's should be used */
++/*#define RV3D_IS_GAME_ENGINE       (1 << 5) *//* UNUSED */
  /**
   * Disable zbuffer offset, skip calls to #ED_view3d_polygon_offset.
   * Use when precise surface depth is needed and picking bias isn't, see T45434).
@@@ -508,12 -341,17 +508,12 @@@ enum 
  #define V3D_VIEW_PANUP                         8
  
  /* View3d->gridflag */
- #define V3D_SHOW_FLOOR                        1
- #define V3D_SHOW_X                            2
- #define V3D_SHOW_Y                            4
- #define V3D_SHOW_Z                            8
+ #define V3D_SHOW_FLOOR          (1 << 0)
+ #define V3D_SHOW_X              (1 << 1)
+ #define V3D_SHOW_Y              (1 << 2)
+ #define V3D_SHOW_Z              (1 << 3)
  
 -/* View3d->twtype (bits, we can combine them) */
 -#define V3D_MANIP_TRANSLATE     (1 << 0)
 -#define V3D_MANIP_ROTATE        (1 << 1)
 -#define V3D_MANIP_SCALE         (1 << 2)
 -
 -/* View3d->twmode */
 +/* Scene.orientation_type */
  #define V3D_MANIP_GLOBAL              0
  #define V3D_MANIP_LOCAL                       1
  #define V3D_MANIP_NORMAL              2
@@@ -96,22 -133,66 +96,22 @@@ typedef struct World 
  
  /* **************** WORLD ********************* */
  
 -/* skytype */
 -#define WO_SKYBLEND     (1 << 0)
 -#define WO_SKYREAL      (1 << 1)
 -#define WO_SKYPAPER     (1 << 2)
 -/* while render: */
 -#define WO_SKYTEX       (1 << 3)
 -#define WO_ZENUP        (1 << 4)
 -
  /* mode */
- #define WO_MIST                      1
- //#define WO_STARS               2 /* deprecated */
- /*#define WO_DOF                 4*/
- //#define WO_ACTIVITY_CULLING    8 /* deprecated */
- //#define WO_ENV_LIGHT                  16
- //#define WO_DBVT_CULLING               32 /* deprecated */
- #define WO_AMB_OCC              64
- //#define WO_INDIRECT_LIGHT     128
+ #define WO_MIST                (1 << 0)
+ //#define WO_STARS               (1 << 1) /* deprecated */
 -/*#define WO_DOF                 (1 << 2) */
 -#define WO_ACTIVITY_CULLING    (1 << 3)
 -#define WO_ENV_LIGHT          (1 << 4)
 -#define WO_DBVT_CULLING       (1 << 5)
++/*#define WO_DOF                 (1 << 2)*/
++//#define WO_ACTIVITY_CULLING      (1 << 3) /* deprecated */
++//#define WO_ENV_LIGHT            (1 << 4)
++//#define WO_DBVT_CULLING         (1 << 5) /* deprecated */
+ #define WO_AMB_OCC            (1 << 6)
 -#define WO_INDIRECT_LIGHT     (1 << 7)
++//#define WO_INDIRECT_LIGHT   (1 << 7)
  
 -/* aomix */
  enum {
 -      WO_AOADD    = 0,
 -#ifdef DNA_DEPRECATED
 -      WO_AOSUB    = 1,  /* deprecated */
 -      WO_AOADDSUB = 2,  /* deprecated */
 -#endif
 -      WO_AOMUL    = 3,
 +      WO_MIST_QUADRATIC          = 0,
 +      WO_MIST_LINEAR             = 1,
 +      WO_MIST_INVERSE_QUADRATIC  = 2,
  };
  
 -/* ao_samp_method - methods for sampling the AO hemi */
 -#define WO_AOSAMP_CONSTANT                    0
 -#define WO_AOSAMP_HALTON                      1
 -#define WO_AOSAMP_HAMMERSLEY          2
 -
 -/* aomode (use distances & random sampling modes) */
 -#define WO_AODIST       (1 << 0)
 -#define WO_AORNDSMP     (1 << 1)
 -#define WO_AOCACHE      (1 << 2)
 -
 -/* aocolor */
 -#define WO_AOPLAIN    0
 -#define WO_AOSKYCOL   1
 -#define WO_AOSKYTEX   2
 -
 -/* ao_gather_method */
 -#define WO_AOGATHER_RAYTRACE  0
 -#define WO_AOGATHER_APPROX            1
 -
 -/* texco (also in DNA_material_types.h) */
 -#define TEXCO_ANGMAP      (1 << 6)
 -#define TEXCO_H_SPHEREMAP (1 << 8)
 -#define TEXCO_H_TUBEMAP   (1 << 10)
 -#define TEXCO_EQUIRECTMAP (1 << 11)
 -
 -/* mapto */
 -#define WOMAP_BLEND     (1 << 0)
 -#define WOMAP_HORIZ     (1 << 1)
 -#define WOMAP_ZENUP     (1 << 2)
 -#define WOMAP_ZENDOWN   (1 << 3)
 -// #define WOMAP_MIST   (1 << 4) /* Deprecated */
 -
  /* flag */
  #define WO_DS_EXPAND  (1<<0)
        /* NOTE: this must have the same value as MA_DS_SHOW_TEXS,