Aras Pranckevicius
7f8d05131a
IDManagement: Speedup ID unique name assignment by tracking used names/basenames/suffixes
...
An implementation of T73412, roughly as outlined there:
Track the names that are in use, as well as base names (before
numeric suffix) plus a bit map for each base name, indicating which
numeric suffixes are already used. This is done per-Main/Library,
per-object-type.
Timings (Windows, VS2022 Release build, AMD Ryzen 5950X):
- Scene with 10k cubes, Shift+D to duplicate them all: 8.7s -> 1.9s.
Name map memory usage for resulting 20k objects: 4.3MB.
- Importing a 2.5GB .obj file of exported Blender 3.0 splash scene
(24k objects), using the new C++ importer: 34.2s-> 22.0s. Name map
memory usage for resulting scene: 8.6MB.
- Importing Disney Moana USD scene (almost half a million objects):
56min -> 10min. Name map usage: ~100MB. Blender crashes later on
when trying to render it, in the same place in both cases, but
that's for another day.
Reviewed By: Bastien Montagne
Differential Revision: https://developer.blender.org/D14162
2022-07-20 14:27:14 +03:00
..
2022-05-19 11:17:01 +10:00
2022-02-11 09:14:36 +11:00
2022-07-08 11:33:22 +10:00
2022-06-03 15:08:11 +10:00
2022-02-11 09:14:36 +11:00
2022-02-11 09:14:36 +11:00
2022-02-11 09:14:36 +11:00
2022-02-11 09:14:36 +11:00
2022-02-11 09:14:36 +11:00
2022-02-11 09:14:36 +11:00
2022-06-30 15:09:13 +02:00
2022-06-30 15:09:13 +02:00
2022-02-11 09:14:36 +11:00
2022-02-11 09:14:36 +11:00
2022-02-11 09:14:36 +11:00
2022-07-15 13:40:04 +02:00
2022-06-07 15:01:03 +10:00
2022-02-11 09:14:36 +11:00
2022-06-29 22:54:29 +08:00
2022-02-11 09:14:36 +11:00
2022-06-18 18:43:02 +03:00
2022-02-11 09:14:36 +11:00
2022-04-22 10:27:15 -05:00
2022-02-11 09:14:36 +11:00
2022-02-11 09:14:36 +11:00
2022-07-19 18:01:04 -05:00
2022-06-01 15:38:48 +10:00
2022-02-11 14:23:54 +11:00
2022-04-04 11:47:28 +02:00
2022-02-11 09:14:36 +11:00
2022-02-11 09:14:36 +11:00
2022-02-11 09:14:36 +11:00
2022-02-11 09:14:36 +11:00
2022-04-19 17:07:53 +02:00
2022-04-19 17:07:53 +02:00
2022-02-11 09:14:36 +11:00
2022-02-11 09:14:36 +11:00
2022-06-30 12:14:20 +10:00
2022-06-30 12:14:22 +10:00
2022-05-05 10:55:51 +10:00
2022-02-11 09:14:36 +11:00
2022-05-27 17:03:25 +02:00
2022-07-20 14:27:14 +03:00
2022-02-11 09:14:36 +11:00
2022-05-27 10:52:49 +02:00
2022-06-17 07:33:06 +10:00
2022-02-11 09:14:36 +11:00
2022-02-11 09:14:36 +11:00
2022-04-13 11:48:12 +02:00
2022-06-30 22:45:42 +02:00
2022-02-11 09:14:36 +11:00
2022-06-17 07:33:06 +10:00
2022-02-11 09:14:36 +11:00
2022-02-11 09:14:36 +11:00
2022-06-30 12:14:22 +10:00
2022-02-11 09:14:36 +11:00
2022-04-13 11:48:12 +02:00
2022-02-11 09:14:36 +11:00
2022-06-28 10:55:45 +02:00
2022-02-11 09:14:36 +11:00
2022-06-29 22:54:29 +08:00
2022-04-12 23:33:36 -07:00
2022-06-14 14:54:25 +02:00
2022-04-18 23:48:43 -05:00
2022-02-11 09:14:36 +11:00
2022-02-11 09:14:36 +11:00
2022-05-04 10:56:33 +02:00
2022-06-14 14:54:25 +02:00
2022-02-11 09:14:36 +11:00
2022-02-11 09:14:36 +11:00
2022-02-11 09:14:36 +11:00
2022-07-02 10:14:26 -04:00
2022-02-11 09:14:36 +11:00
2022-02-15 12:32:15 +01:00
2022-02-11 09:14:36 +11:00
2022-02-11 09:14:36 +11:00
2022-07-08 14:47:10 +02:00
2022-02-11 09:14:36 +11:00
2022-02-11 09:14:36 +11:00
2022-03-25 12:10:21 +11:00
2022-04-14 16:58:15 +10:00
2022-03-25 12:10:30 +11:00
2022-02-11 09:14:36 +11:00
2022-07-19 18:06:56 -05:00
2022-02-11 09:14:36 +11:00
2022-06-29 20:52:00 -04:00
2022-06-30 18:38:44 +02:00
2022-07-11 11:17:08 +02:00
2022-02-11 09:14:36 +11:00
2022-06-29 12:48:34 +02:00
2022-02-11 09:14:36 +11:00
2022-02-11 09:14:36 +11:00
2022-02-11 09:14:36 +11:00
2022-04-13 11:48:12 +02:00
2022-05-19 21:05:23 +02:00
2022-06-22 10:45:18 +02:00
2022-07-07 08:14:00 -05:00
2022-02-11 09:14:36 +11:00
2022-02-11 09:14:36 +11:00
2022-04-07 14:48:20 +10:00
2022-02-11 09:14:36 +11:00
2022-06-21 16:00:56 +02:00
2022-02-11 09:14:36 +11:00
2022-03-01 09:36:25 +11:00
2022-07-18 13:59:08 +02:00
2022-02-11 09:14:36 +11:00
2022-02-11 09:14:36 +11:00
2022-02-11 09:14:36 +11:00
2022-02-11 09:14:36 +11:00
2022-02-11 09:14:36 +11:00
2022-02-11 09:14:36 +11:00
2022-04-30 16:23:43 +09:00
2022-02-11 09:14:36 +11:00
2022-05-23 19:08:01 +02:00
2022-05-23 19:08:01 +02:00
2022-07-14 16:10:13 +10:00
2022-07-07 18:08:18 +02:00
2022-02-11 09:14:36 +11:00
2022-04-13 11:48:12 +02:00
2022-04-30 16:23:43 +09:00