diff options
author | Brecht Van Lommel <brecht@blender.org> | 2022-08-30 18:20:00 +0300 |
---|---|---|
committer | Brecht Van Lommel <brecht@blender.org> | 2022-09-21 17:27:05 +0300 |
commit | 03fbfb30923ed5aaab4a389b8c0dbd5b71c0e35b (patch) | |
tree | 9b728fe5cfc4a6f2468a94df315570a47755380f /source/blender/render/RE_engine.h | |
parent | 5fddc4a3b12832af1d06a782b35d5035955bcae8 (diff) |
Fix part of T100626: Cycles not using tiles for baking
Leading to excessive memory usage compared to Blender 2.93. There's still
some avoidable memory usage remaining, due to the full float buffer in the
new image editor drawing and not loading the cached EXR from disk in tiles.
Main difficulty was handling multi-image baking and disk caches, which is
solved by associating a unique layer name with each image so it can be
matched when reading back the image from the disk.
Also some minor header changes to be able to use RE_MAXNAME in RE_bake.h.
Diffstat (limited to 'source/blender/render/RE_engine.h')
-rw-r--r-- | source/blender/render/RE_engine.h | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/source/blender/render/RE_engine.h b/source/blender/render/RE_engine.h index d7815ef3f3c..5d10da8dac0 100644 --- a/source/blender/render/RE_engine.h +++ b/source/blender/render/RE_engine.h @@ -15,6 +15,7 @@ #include "BLI_threads.h" +struct BakeTargets; struct BakePixel; struct Depsgraph; struct Main; @@ -140,9 +141,10 @@ typedef struct RenderEngine { struct ReportList *reports; struct { + const struct BakeTargets *targets; const struct BakePixel *pixels; float *result; - int width, height, depth; + int image_id; int object_id; } bake; |