WIP: Core: use generic copy-on-write system to avoid redundant copies #104478

Closed
Jacques Lucke wants to merge 66 commits from JacquesLucke/blender:temp-copy-on-write into main

When changing the target branch, be careful to rebase the branch in your fork to match. See documentation.

66 Commits

Author SHA1 Message Date
Jacques Lucke 2318d0a508 fix
buildbot/vexp-code-patch-coordinator Build done. Details
Fixed this in the past at some point, but a merge conflict reverted it..
2023-03-14 20:34:55 +01:00
Jacques Lucke ff134afff8 Merge branch 'main' into temp-copy-on-write
buildbot/vexp-code-patch-coordinator Build done. Details
2023-03-14 20:17:06 +01:00
Jacques Lucke 3400e55ba9 cleanup name
buildbot/vexp-code-patch-coordinator Build done. Details
2023-03-14 20:10:36 +01:00
Jacques Lucke 36a18db75a rename 2023-03-14 19:29:24 +01:00
Jacques Lucke 5f4ca0ca2c cleanup 2023-03-14 19:24:23 +01:00
Jacques Lucke 73aa98c62f cleanup 2023-03-14 19:11:28 +01:00
Jacques Lucke 27061b704b cleanup 2023-03-14 18:52:30 +01:00
Jacques Lucke 39d770fae4 cleanup 2023-03-14 18:21:57 +01:00
Jacques Lucke 0f9e2af3b0 fix double free in edit-mesh-undo
buildbot/vexp-code-patch-coordinator Build done. Details
2023-03-14 17:49:22 +01:00
Jacques Lucke 657b0dc433 make destructor virtual 2023-03-14 17:47:18 +01:00
Jacques Lucke f890130a6c remove rna integration 2023-03-14 17:04:15 +01:00
Jacques Lucke 195e9c335b fix merge error 2023-03-14 17:00:38 +01:00
Jacques Lucke 28faa89077 cleanup 2023-03-14 16:30:14 +01:00
Jacques Lucke 7ce2820c05 cleanup 2023-03-14 15:54:16 +01:00
Jacques Lucke 14905927b3 Merge branch 'main' into temp-copy-on-write 2023-03-14 15:53:35 +01:00
Jacques Lucke 80f34eaa4d Merge branch 'main' into temp-copy-on-write 2023-02-10 17:01:07 +01:00
Jacques Lucke 06e1b3f9f6 Merge branch 'main' into temp-copy-on-write-customdata 2023-02-08 14:48:47 +01:00
Jacques Lucke 82ffc03449 fix 2023-02-07 19:50:58 +01:00
Jacques Lucke ce46579108 Merge branch 'main' into temp-copy-on-write-customdata 2023-02-07 19:50:54 +01:00
Jacques Lucke e71021db06 Merge branch 'master' into temp-copy-on-write-customdata 2023-02-06 00:27:06 +01:00
Jacques Lucke ff6f1a0a70 simplify embedding cow 2023-02-05 23:36:06 +01:00
Jacques Lucke 9c51e093a3 partial fix 2023-02-05 23:17:32 +01:00
Jacques Lucke 1284bdc24c removing support for saving undo step as actual file 2023-02-05 22:31:05 +01:00
Jacques Lucke a59b848992 fix 2023-02-05 22:22:23 +01:00
Jacques Lucke 4d67393e7e Merge branch 'master' into temp-copy-on-write-customdata 2023-02-05 22:19:52 +01:00
Jacques Lucke 2e9fcdc600 disable array store for editmesh undo 2023-01-31 22:42:05 +01:00
Jacques Lucke b4ac85084c improve rna api 2023-01-31 22:41:40 +01:00
Jacques Lucke 6f4772d170 cleanup file structure 2023-01-31 21:53:57 +01:00
Jacques Lucke b703fc76c8 cleanup 2023-01-31 21:47:48 +01:00
Jacques Lucke 60612b84dc cleanup 2023-01-31 21:46:45 +01:00
Jacques Lucke a16a60f600 cleanup 2023-01-31 21:45:35 +01:00
Jacques Lucke 6065a378cf use virtual class 2023-01-31 21:43:04 +01:00
Jacques Lucke 53178b94e0 initial rna integration 2023-01-31 19:55:17 +01:00
Jacques Lucke ee675db8f6 store destructor in cow type 2023-01-29 02:16:59 +01:00
Jacques Lucke 8f6b51ac15 cleanup 2023-01-29 00:20:36 +01:00
Jacques Lucke c9477aac6a Merge branch 'master' into temp-copy-on-write-customdata 2023-01-29 00:15:55 +01:00
Jacques Lucke c678fe09e4 cleanup 2023-01-23 01:48:20 +01:00
Jacques Lucke 097c085a4e Support copy-on-write in undo system 2023-01-23 01:47:04 +01:00
Jacques Lucke ef1f42865e Merge branch 'master' into temp-copy-on-write-customdata 2023-01-23 00:55:37 +01:00
Jacques Lucke 2b71cf4b31 Merge branch 'master' into temp-copy-on-write-customdata 2023-01-22 20:44:29 +01:00
Jacques Lucke d4ec435d4f compile fixes 2023-01-21 18:14:36 +01:00
Jacques Lucke ba33242d9a progress 2023-01-21 16:35:33 +01:00
Jacques Lucke 66b4840d90 fix freeing 2023-01-21 16:32:06 +01:00
Jacques Lucke 8cff18da91 progress 2023-01-21 15:24:49 +01:00
Jacques Lucke b45b522d22 progress 2023-01-21 15:02:06 +01:00
Jacques Lucke b592d76a8e remove CD_FLAG_NOFREE 2023-01-21 14:32:56 +01:00
Jacques Lucke be0fe0433d cleanup 2023-01-21 14:21:54 +01:00
Jacques Lucke 3530c63611 progress 2023-01-21 14:11:36 +01:00
Jacques Lucke c1d1665a79 progress 2023-01-21 14:01:47 +01:00
Jacques Lucke 3f22933534 progress 2023-01-21 13:47:35 +01:00
Jacques Lucke c4c9a43072 progress 2023-01-21 13:42:06 +01:00
Jacques Lucke e3779d12d5 progress 2023-01-21 13:28:31 +01:00
Jacques Lucke 3ed5d00f7e fix 2023-01-21 13:01:10 +01:00
Jacques Lucke 5329d5803e progress 2023-01-21 12:50:29 +01:00
Jacques Lucke 51388d401c Merge branch 'temp-copy-on-write' into temp-copy-on-write-customdata 2023-01-21 11:41:08 +01:00
Jacques Lucke ced0021498 Merge branch 'master' into temp-copy-on-write 2023-01-21 11:40:42 +01:00
Jacques Lucke 5a3c8a1b12 change custom data api for cow 2023-01-20 23:45:03 +01:00
Jacques Lucke 0b7155b5c5 fix 2023-01-20 21:59:07 +01:00
Jacques Lucke d76e6862f0 fix 2023-01-20 21:57:15 +01:00
Jacques Lucke 6b1028d492 fix 2023-01-20 21:52:16 +01:00
Jacques Lucke dd8af7b46a Merge branch 'master' into temp-copy-on-write 2023-01-20 21:45:15 +01:00
Jacques Lucke ac439c7eed Use new copy-on-write system for sharing geometry components.
Differential Revision: https://developer.blender.org/D14139
2022-02-17 17:25:45 +01:00
Jacques Lucke 3f3adef4a0 Merge branch 'master' into temp-copy-on-write 2022-01-04 13:38:02 +01:00
Jacques Lucke c5b55a84f5 cleanup 2022-01-03 16:57:15 +01:00
Jacques Lucke 1713a780c5 progress 2022-01-03 16:55:45 +01:00
Jacques Lucke e0ac932156 initial data structure 2022-01-03 15:29:33 +01:00