2abfcebb0e
Cleanup: use C comments for descriptive text
...
Follow our code style guide by using C-comments for text descriptions.
2020-10-10 22:04:51 +11:00
762d93a26b
DNA: use better type for SDNA->structs
...
The data layout remains exactly the same..
This change just gives all the elements in `SDNA->structs` names,
making it more comfortable to work with the data.
Reviewers: campbellbarton
Differential Revision: https://developer.blender.org/D8926
2020-09-29 12:12:09 +02:00
216a221876
Implement ID properties support for TimeMarker
...
Allows scripters to store additional information in the marker itself instead
of using work-around approach based on marker names and such.
Differential Revision: https://developer.blender.org/D8944
2020-09-21 12:25:45 +02:00
5ea1049e75
Sanitize type 'size' parameters in our read/write file code
...
This patch tries to sanitize the types of our size parameters across our read
and write code, which is currently fairly inconsistent (using `int`, `uint`,
`size_t`...), by using `size_t` everywhere. Since in Blender file themselves
we can only store chunk of size `MAX_INT`, added some asserts to ensure that
as well.
See {T79561} for details.
Differential Revision: https://developer.blender.org/D8672
2020-09-20 18:41:50 +02:00
a8fd3df905
Cleanup: spelling
2020-09-15 10:23:41 +10:00
ec6d32b238
Fix T78392: [2.83.5, 2.90, 2.91] Crash on undo/ redo after changing modes.
...
During undo/redo read code is expected to clear the `OB_MODE_EDIT`
bitflag of `Object.mode`, for some reasons.
This was not done anymore for re-used Objects, we need to add a special
handling case for that too.
Should be backported to 2.90 and 2.83 (will probably not be straight
forward for the latter).
2020-09-14 14:59:29 +02:00
08002eb865
Cleanup: remove unused includes
2020-09-11 12:08:12 +02:00
c27d00cde0
Refactor: move CacheFile .blend I/O to IDTypeInfo callbacks
2020-09-11 11:57:54 +02:00
f8ef7f045c
Refactor: move Sound .blend I/O to IDTypeInfo callbacks
2020-09-11 11:52:37 +02:00
218e9e76a8
Refactor: move Simulation .blend I/O to IDTypeInfo callbacks
2020-09-11 11:46:26 +02:00
12693b807e
Refactor: move Volume .blend I/O to IDTypeInfo callbacks
2020-09-11 11:39:06 +02:00
ff4578a6e7
Refactor: move PointCloud .blend I/O to IDTypeInfo callbacks
2020-09-11 11:20:57 +02:00
1b6dd42803
Refactor: move Hair .blend I/O to IDTypeInfo callbacks
2020-09-11 11:14:17 +02:00
12f33daad7
Refactor: move GPencil .blend I/O to IDTypeInfo callbacks
2020-09-11 11:06:15 +02:00
16fecdf994
Refactor: move Texture .blend I/O to IDTypeInfo callbacks
2020-09-11 10:35:36 +02:00
11df9cb9fb
Refactor: move Key .blend I/O to IDTypeInfo callbacks
2020-09-10 18:01:55 +02:00
e628e8821e
Refactor: move LightProbe .blend I/O to IDTypeInfo callbacks
2020-09-10 17:47:04 +02:00
133b7c34dd
Refactor: move Armature .blend I/O to IDTypeInfo callbacks
2020-09-10 17:41:04 +02:00
0c7e77d416
Refactor: move Speaker .blend I/O to IDTypeInfo callbacks
2020-09-10 17:31:18 +02:00
be5cbbabce
Refactor: move Mask .blend I/O to IDTypeInfo callbacks
2020-09-10 17:22:35 +02:00
60e102c0a0
Refactor: move World .blend I/O to IDTypeInfo callbacks
2020-09-10 17:06:49 +02:00
0649e63716
Refactor: move Camera .blend I/O to IDTypeInfo callbacks
2020-09-10 16:58:23 +02:00
8a65afac1e
Refactor: move Curve .blend I/O to IDTypeInfo callbacks
2020-09-10 16:47:12 +02:00
a82bb8f5f0
clang-format
2020-09-10 16:37:52 +02:00
89b570570a
Refactor: move MetaBall .blend I/O to IDTypeInfo callbacks
2020-09-10 16:37:11 +02:00
ea1094bdb0
Refactor: move Material .blend I/O to IDTypeInfo callbacks
2020-09-10 16:23:53 +02:00
94c533ac35
Refactor: move Light .blend I/O to IDTypeInfo callbacks
2020-09-10 16:13:18 +02:00
ede094f9b2
Refactor: move Image .blend I/O to IDTypeInfo callbacks
2020-09-10 15:59:08 +02:00
7f4799a189
Refactor: move Brush .blend I/O to IDTypeInfo callbacks
2020-09-10 15:50:50 +02:00
8e4cc07547
Refactor: move PaintCurve/Palette .blend I/O to IDTypeInfo callbacks
2020-09-10 15:40:32 +02:00
eecd3705d7
Refactor: move MovieClip .blend I/O to IDTypeInfo callbacks
2020-09-10 14:53:29 +02:00
3679f899fb
Refactor: move VFont .blend I/O to IDTypeInfo callbacks
2020-09-10 14:42:54 +02:00
fbc12e6cc5
Cleanup: extract functions for PackedFile .blend I/O
2020-09-10 14:35:51 +02:00
b8bcbb2cf2
Refactor: move Text .blend I/O to IDTypeInfo callbacks
2020-09-10 13:57:08 +02:00
fcf6177b0d
Refactor: move LineStyle .blend I/O to IDTypeInfo callbacks
2020-09-10 13:50:03 +02:00
d11651fff9
Refactor: move bNodeTree .blend I/O to IDTypeInfo callbacks
2020-09-10 13:33:29 +02:00
b443f9b54c
Refactor: move keyingset .blend I/O to blenkernel
...
Ref T76372
2020-09-10 11:17:51 +02:00
2cd41f49cf
Refactor: move Action .blend I/O to IDTypeInfo callbacks
2020-09-10 11:02:42 +02:00
538817d9a8
Refactor: move preview image .blend I/O to blenkernel
...
Ref T76372
2020-09-10 10:33:21 +02:00
4ccd5bf5c6
Fix T80626: Crash adding custom-data layers after reloading the file
...
Regression in a48d78ce07 which caused the meshes CustomData
to be written before it's layer values were updated for writing.
2020-09-09 20:38:33 +10:00
7b2fe4c9ec
Refactor: move Lattice .blend I/O to IDTypeInfo callbacks
2020-08-28 16:10:17 +02:00
8815996418
Refactor: move Mesh .blend I/O to IDTypeInfo callbacks
...
I'm also adding `BKE_id_blend_write`, so that it can be accessed
outside of `readfile.c`.
2020-08-28 15:49:14 +02:00
a48d78ce07
Refactor: move CustomData .blend I/O to blenkernel
...
This is part of T76372.
2020-08-28 14:30:45 +02:00
3dc222ea7b
Refactor: move defvert .blend IO to blenkernel
...
This is part of T76372.
2020-08-28 14:30:45 +02:00
a443287908
IDTypeInfo: add .blend file io callbacks
...
This is part of T76372.
It adds the `blend_write`, `blend_read_data`, `blend_read_lib`
and `blend_read_expand` which correspond to the various
steps when reading and writing .blend files.
Having these callbacks allows us to decentralize the blenloader
code a lot more. This has the affect that code related to any
specific ID type is less scattered.
Reviewers: mont29
Differential Revision: https://developer.blender.org/D8670
2020-08-28 13:05:48 +02:00
70500121b4
Cleanup: rename iterators over sequences to be more clear about what they do.
...
No functional changes expected.
2020-08-21 18:55:27 +02:00
0de48f8550
Refactor: move animdata code from blenloader to blenkernel
2020-08-21 15:58:28 +02:00
bed634c4f9
Refactor: move nla code from blenloader to blenkernel
2020-08-21 15:42:26 +02:00
71634d94ca
Cleanup: remove LodLevel
...
This was part of the game engine and is not used anymore.
Reviewers: brecht
Differential Revision: https://developer.blender.org/D8666
2020-08-21 15:24:36 +02:00
79d678e677
Refactor: move fcurve/fmodifier code from blenloader to blenkernel
...
This is part of T76372.
2020-08-21 15:23:33 +02:00