DNA: reduce size of Base struct

Re-order members and remove pad members,
reducing it's size by 24 bytes on 64 bit systems.
This commit is contained in:
Campbell Barton 2022-10-03 11:15:45 +11:00
parent d3ba8826b0
commit d4d40f3b69
Notes: blender-bot 2023-02-13 14:21:08 +01:00
Referenced by issue #102491, Blender crashes frequently when rendering Smoke Simulation (Manta Flow) with Cycles using GPU
Referenced by issue #102142, Bug baking objects with COMBINED and active objects error.
Referenced by issue #101537, Regression: Crash render Cycles & Volume + Sky Texture on world shader
1 changed files with 12 additions and 15 deletions

View File

@ -71,26 +71,23 @@ typedef enum eViewLayerCryptomatteFlags {
typedef struct Base {
struct Base *next, *prev;
/* Flags which are based on the collections flags evaluation, does not
* include flags from object's restrictions. */
short flag_from_collection;
/* Final flags, including both accumulated collection flags and object's
* restriction flags. */
short flag;
unsigned short local_view_bits;
char _pad1[10];
struct Object *object;
unsigned int lay DNA_DEPRECATED;
int flag_legacy;
unsigned short local_collections_bits;
short _pad2[3];
/* Pointer to an original base. Is initialized for evaluated view layer.
* NOTE: Only allowed to be accessed from within active dependency graph. */
struct Base *base_orig;
void *_pad;
unsigned int lay DNA_DEPRECATED;
/* Final flags, including both accumulated collection flags and object's
* restriction flags. */
short flag;
/* Flags which are based on the collections flags evaluation, does not
* include flags from object's restrictions. */
short flag_from_collection;
short flag_legacy;
unsigned short local_view_bits;
unsigned short local_collections_bits;
char _pad1[2];
} Base;
typedef struct ViewLayerEngineData {