diff options
author | Jeroen Bakker <jbakker> | 2021-01-05 16:59:45 +0300 |
---|---|---|
committer | Jeroen Bakker <jeroen@blender.org> | 2021-01-05 17:03:05 +0300 |
commit | 1f41bdc6f37fd091bb5649436f68335b10ade51f (patch) | |
tree | 699848cf8bff58bdf0e6d6b3cba54aa0d6a5e717 /source/blender/draw/engines/eevee/eevee_private.h | |
parent | 7cd6f667e33e60f3d53e465023bb75f90f499b07 (diff) |
Eevee Cryptomatte: Store hashes in render result meta data
Stores cryptomatte hashes as meta data to the render result. Compositors could
use this for lookup on names in stead of hashes.
Differential Revision: https://developer.blender.org/D9553
Diffstat (limited to 'source/blender/draw/engines/eevee/eevee_private.h')
-rw-r--r-- | source/blender/draw/engines/eevee/eevee_private.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/source/blender/draw/engines/eevee/eevee_private.h b/source/blender/draw/engines/eevee/eevee_private.h index 5bf8cab1b22..9702db5fecc 100644 --- a/source/blender/draw/engines/eevee/eevee_private.h +++ b/source/blender/draw/engines/eevee/eevee_private.h @@ -977,6 +977,7 @@ typedef struct EEVEE_PrivateData { eViewLayerEEVEEPassType render_passes; int aov_hash; int num_aovs_used; + struct CryptomatteSession *cryptomatte_session; bool cryptomatte_accurate_mode; EEVEE_CryptomatteSample *cryptomatte_accum_buffer; float *cryptomatte_download_buffer; @@ -1246,6 +1247,7 @@ void EEVEE_cryptomatte_output_init(EEVEE_ViewLayerData *sldata, int tot_samples); void EEVEE_cryptomatte_cache_init(EEVEE_ViewLayerData *sldata, EEVEE_Data *vedata); void EEVEE_cryptomatte_cache_populate(EEVEE_Data *vedata, EEVEE_ViewLayerData *sldata, Object *ob); +void EEVEE_cryptomatte_cache_finish(EEVEE_ViewLayerData *sldata, EEVEE_Data *vedata); void EEVEE_cryptomatte_particle_hair_cache_populate(EEVEE_Data *vedata, EEVEE_ViewLayerData *sldata, Object *ob); @@ -1261,6 +1263,7 @@ void EEVEE_cryptomatte_render_result(struct RenderLayer *rl, const rcti *rect, EEVEE_Data *vedata, EEVEE_ViewLayerData *sldata); +void EEVEE_cryptomatte_store_metadata(EEVEE_Data *vedata, struct RenderResult *render_result); void EEVEE_cryptomatte_free(EEVEE_Data *vedata); /* eevee_occlusion.c */ |