Jacques Lucke
934041e8d6
BLO: support overaligned types in SDNA
...
This fixes #121695 . `float4x4` matrices are generally expected to be 16 byte aligned.
Currently, there is no mechanism (afaik) that allows allocating these overaligned types
when loading files from disk. This patch adds an array with alignment information for
each type in `SDNA`. Currently, the alignment is just `__STDCPP_DEFAULT_NEW_ALIGNMENT__`
for all types and is manually set for the `mat4x4f` DNA type. The .blend file format is
not changed at all. The alignment information is purely runtime data.
In the future it would probably be good to generalize this a bit more instead of
hardcoding the alignment for `mat4x4f`, but would make it unnecessarily complex for
now because this is intended for the release branch.
Pull Request: https://projects.blender.org/blender/blender/pulls/123271
2024-06-19 12:16:24 +02:00
..
2024-06-19 12:16:24 +02:00
2024-02-26 17:40:57 +01:00
2023-08-16 00:20:26 +10:00
2024-04-04 10:55:10 +11:00
2024-04-24 10:55:44 +10:00
2023-11-15 18:46:07 +01:00
2024-03-28 15:14:01 +01:00
2023-08-16 00:20:26 +10:00
2024-06-07 11:46:40 +10:00
2024-06-06 09:55:13 +10:00
2024-05-08 11:25:00 +02:00
2024-03-18 15:04:12 +01:00
2024-03-27 12:28:16 +01:00
2024-05-07 04:02:17 +02:00
2024-01-21 19:13:46 +01:00
2024-02-01 09:21:55 +01:00
2024-02-01 09:21:55 +01:00
2024-02-02 17:01:20 +01:00
2023-09-03 13:37:50 +02:00
2024-04-03 10:22:53 +02:00
2024-02-02 10:02:25 +01:00
2024-04-23 18:56:41 +02:00
2024-03-18 15:04:12 +01:00
2024-01-21 19:34:20 +01:00
2024-01-21 19:49:58 +01:00
2024-01-21 19:26:31 +01:00
2024-06-18 18:29:25 +02:00
2024-03-18 15:04:12 +01:00
2024-05-10 16:00:30 +02:00
2024-03-18 15:04:12 +01:00
2024-03-18 15:04:12 +01:00
2024-05-20 02:56:25 +02:00
2024-04-18 16:48:19 +02:00
2024-03-18 15:04:12 +01:00
2024-06-07 16:33:03 +10:00
2024-03-18 15:04:12 +01:00
2024-06-02 20:36:33 -04:00
2024-03-18 15:04:12 +01:00
2024-04-24 17:08:25 +02:00
2023-12-20 20:59:11 -05:00
2024-01-04 15:07:48 -05:00
2024-03-21 15:35:02 +01:00
2024-04-12 16:16:55 -04:00
2024-03-18 15:04:12 +01:00
2024-05-27 18:46:19 +02:00
2023-11-16 12:00:26 +01:00
2023-12-08 16:40:06 -05:00
2023-08-16 00:20:26 +10:00
2024-02-02 19:55:06 +01:00
2023-08-16 00:20:26 +10:00
2023-08-16 00:20:26 +10:00
2024-05-20 10:14:41 -04:00
2023-08-16 00:20:26 +10:00
2023-10-30 21:40:35 +01:00
2023-11-27 16:14:49 +01:00
2024-06-19 12:08:27 +02:00
2024-03-28 20:57:50 +11:00
2024-04-02 16:40:33 -04:00
2024-03-18 15:04:12 +01:00
2024-03-27 22:25:08 -04:00
2023-12-26 23:59:44 -05:00
2024-03-18 15:04:12 +01:00
2023-12-08 16:40:06 -05:00
2023-08-16 00:20:26 +10:00
2024-03-23 17:43:38 +01:00
2024-04-02 21:11:34 -04:00
2024-05-20 02:58:13 +02:00
2024-05-20 10:00:31 -04:00
2024-03-27 18:06:31 +01:00
2024-03-18 15:04:12 +01:00
2024-05-17 15:56:57 +02:00
2024-04-08 22:10:39 +02:00
2023-12-08 16:40:06 -05:00
2023-08-16 00:20:26 +10:00
2024-05-31 16:23:31 +02:00
2023-08-16 00:20:26 +10:00
2024-01-12 14:30:34 +01:00
2024-05-23 13:50:06 +10:00
2023-08-16 00:20:26 +10:00
2024-03-18 15:04:12 +01:00
2023-09-27 14:47:50 +10:00
2024-03-18 15:04:12 +01:00
2023-08-16 00:20:26 +10:00
2024-04-16 18:01:15 +02:00
2024-04-25 15:21:14 +02:00
2023-08-16 00:20:26 +10:00
2024-05-31 15:13:35 +02:00
2024-03-18 15:04:12 +01:00
2024-06-13 19:58:22 +02:00
2024-05-24 17:43:22 +02:00
2024-03-21 09:49:19 +11:00
2023-08-16 00:20:26 +10:00
2023-12-13 11:08:03 +01:00
2024-01-19 20:29:38 +01:00
2024-05-24 20:41:08 +02:00
2024-03-18 15:04:12 +01:00
2023-08-16 00:20:26 +10:00
2024-01-31 17:08:09 +01:00
2023-08-16 00:20:26 +10:00
2024-05-20 10:14:41 -04:00
2024-03-18 15:04:12 +01:00
2024-05-23 10:31:41 +02:00
2023-12-20 17:57:24 +01:00
2024-06-06 09:55:13 +10:00
2024-03-18 15:04:12 +01:00
2024-02-22 19:25:59 +01:00
2023-09-25 18:00:28 +02:00
2023-08-16 00:20:26 +10:00
2024-04-03 10:22:05 +11:00
2024-01-22 13:47:13 +01:00
2024-01-04 15:07:48 -05:00
2024-05-13 15:58:04 +02:00
2024-04-03 10:22:05 +11:00
2024-01-12 11:20:35 +01:00
2024-01-24 11:46:39 -05:00
2024-01-24 18:18:14 +01:00
2023-11-27 16:10:43 +01:00
2023-11-30 10:42:16 +11:00
2024-03-18 15:04:12 +01:00
2024-03-15 15:25:13 -04:00
2024-05-20 13:11:18 -04:00
2024-03-26 17:55:20 +11:00
2023-08-16 00:20:26 +10:00
2024-03-18 15:04:12 +01:00
2023-11-27 09:30:52 +11:00
2024-05-20 13:11:18 -04:00
2023-12-20 20:58:38 -05:00
2024-05-20 02:58:13 +02:00
2024-04-18 13:52:20 +02:00
2024-04-18 13:52:20 +02:00
2024-05-20 13:18:24 -04:00
2024-05-28 17:12:45 +02:00
2024-05-20 10:14:41 -04:00
2024-04-03 10:22:05 +11:00
2024-04-30 16:02:08 -04:00
2024-04-24 10:55:44 +10:00
2024-05-05 09:30:02 +02:00
2024-06-06 09:55:13 +10:00
2024-04-23 18:56:41 +02:00
2023-11-07 09:50:51 +01:00
2023-08-16 00:20:26 +10:00
2024-05-03 11:33:21 +10:00
2023-11-16 12:00:26 +01:00
2024-01-12 13:56:28 +01:00
2024-05-31 12:55:40 +02:00
2023-08-16 00:20:26 +10:00
2024-03-18 15:04:12 +01:00
2024-04-30 16:02:08 -04:00
2023-08-16 00:20:26 +10:00
2023-08-16 00:20:26 +10:00
2024-04-03 10:22:05 +11:00
2024-06-04 14:22:13 -04:00
2024-04-30 16:02:08 -04:00
2024-06-02 20:36:33 -04:00
2024-01-19 20:29:38 +01:00
2024-04-29 22:21:23 +02:00
2024-04-17 11:36:36 +10:00
2024-02-01 09:21:55 +01:00
2023-08-16 00:20:26 +10:00
2024-06-07 11:36:20 +10:00
2024-05-20 15:24:03 +02:00
2024-04-24 10:55:44 +10:00
2023-08-16 00:20:26 +10:00
2024-06-13 07:43:11 +02:00
2024-03-28 20:57:50 +11:00
2024-05-08 20:24:10 +02:00
2024-01-19 20:29:38 +01:00
2024-03-18 15:04:12 +01:00
2024-03-29 11:43:15 +01:00
2024-01-11 16:46:46 +11:00
2024-01-31 18:57:06 +01:00
2023-08-16 00:20:26 +10:00
2023-12-14 16:17:55 +01:00
2024-05-20 13:11:18 -04:00
2024-04-19 09:03:31 -04:00
2024-04-19 09:03:31 -04:00
2024-04-19 09:03:31 -04:00
2024-05-20 23:07:14 -04:00
2024-04-19 09:03:31 -04:00
2024-04-19 09:03:31 -04:00
2024-04-19 09:03:48 -04:00
2024-05-20 13:11:18 -04:00
2023-08-16 00:20:26 +10:00
2024-04-03 10:22:05 +11:00
2024-03-28 18:57:57 -04:00
2023-08-16 00:20:26 +10:00
2024-03-18 15:04:12 +01:00
2024-04-22 13:10:16 +02:00
2024-03-28 22:57:57 +11:00
2023-11-28 16:13:09 -05:00
2024-03-18 15:04:12 +01:00
2023-12-20 15:32:52 +01:00
2024-01-08 11:24:37 +11:00
2024-01-08 11:24:37 +11:00
2023-12-20 15:32:52 +01:00
2024-01-10 15:20:29 +01:00
2023-12-20 15:32:52 +01:00
2024-01-04 15:07:48 -05:00
2024-03-18 15:04:12 +01:00
2024-02-03 18:13:34 +01:00
2024-03-18 15:04:12 +01:00
2024-05-06 18:20:43 -04:00
2024-03-18 15:04:12 +01:00
2024-03-18 15:04:12 +01:00
2024-06-02 20:36:33 -04:00
2024-03-26 17:55:20 +11:00
2024-03-18 15:04:12 +01:00
2023-08-16 00:20:26 +10:00