|
Blender V5.0
|
Namespaces | |
| namespace | manifest |
| namespace | tests |
Classes | |
| struct | CryptomatteHash |
| struct | CryptomatteLayer |
| struct | CryptomatteStampDataCallbackData |
| struct | CryptomatteSessionDeleter |
Typedefs | |
| using | CryptomatteSessionPtr = std::unique_ptr<CryptomatteSession, CryptomatteSessionDeleter> |
Functions | |
| std::string | BKE_cryptomatte_meta_data_key (StringRef layer_name, StringRefNull key_name) |
| StringRef | BKE_cryptomatte_extract_layer_name (StringRef render_pass_name) |
| const blender::Vector< std::string > & | BKE_cryptomatte_layer_names_get (const CryptomatteSession &session) |
| CryptomatteLayer * | BKE_cryptomatte_layer_get (CryptomatteSession &session, StringRef layer_name) |
| static std::string | cryptomatte_layer_name_hash (const StringRef layer_name) |
| using blender::bke::cryptomatte::CryptomatteSessionPtr = std::unique_ptr<CryptomatteSession, CryptomatteSessionDeleter> |
Definition at line 140 of file BKE_cryptomatte.hh.
| StringRef blender::bke::cryptomatte::BKE_cryptomatte_extract_layer_name | ( | StringRef | render_pass_name | ) |
Extract the cryptomatte layer name from the given render_pass_name.
Cryptomatte passes are formatted with a trailing number for storing multiple samples that belong to the same cryptomatte layer. This function would remove the trailing numbers to determine the cryptomatte layer name.
A render_pass_name could be 'View Layer.CryptoMaterial02'. The cryptomatte layer would be 'View Layer.CryptoMaterial'.
Definition at line 534 of file cryptomatte.cc.
References blender::StringRefBase::size(), and blender::StringRefBase::substr().
Referenced by blender::nodes::node_composite_file_output_cc::FileOutputOperation::add_meta_data_for_result(), blender::render::Context::populate_meta_data_for_pass(), and blender::bke::cryptomatte::tests::TEST().
| CryptomatteLayer * blender::bke::cryptomatte::BKE_cryptomatte_layer_get | ( | CryptomatteSession & | session, |
| StringRef | layer_name ) |
Definition at line 665 of file cryptomatte.cc.
References CryptomatteSession::layers, and Map< Key, Value, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::lookup_ptr().
Referenced by blender::eevee::Cryptomatte::begin_sync().
| const blender::Vector< std::string > & blender::bke::cryptomatte::BKE_cryptomatte_layer_names_get | ( | const CryptomatteSession & | session | ) |
Definition at line 659 of file cryptomatte.cc.
References CryptomatteSession::layer_names.
Referenced by blender::bke::compositor::add_passes_used_by_cryptomatte_node(), blender::eevee::Cryptomatte::begin_sync(), ntreeCompositCryptomatteLayerPrefix(), and ntreeCompositCryptomatteUpdateLayerNames().
| std::string blender::bke::cryptomatte::BKE_cryptomatte_meta_data_key | ( | StringRef | layer_name, |
| StringRefNull | key_name ) |
Format to a cryptomatte meta data key.
Cryptomatte stores meta data. The keys are formatted containing a hash that is generated from its layer name.
The output of this function is: 'cryptomatte/{hash of layer_name}/{key_name}'.
Definition at line 529 of file cryptomatte.cc.
References cryptomatte_layer_name_hash().
Referenced by blender::nodes::node_composite_file_output_cc::FileOutputOperation::add_meta_data_for_result(), add_render_result_meta_data(), blender::render::Context::populate_meta_data_for_pass(), and blender::bke::cryptomatte::tests::TEST().
|
static |
Definition at line 520 of file cryptomatte.cc.
References cryptomatte_determine_identifier().
Referenced by BKE_cryptomatte_meta_data_key().