|
Blender V4.3
|
#include "BKE_cryptomatte.h"#include "BKE_cryptomatte.hh"#include "BKE_image.hh"#include "BKE_layer.hh"#include "BKE_main.hh"#include "BKE_material.h"#include "DNA_layer_types.h"#include "DNA_material_types.h"#include "DNA_node_types.h"#include "DNA_object_types.h"#include "DNA_scene_types.h"#include "BLI_compiler_attrs.h"#include "BLI_dynstr.h"#include "BLI_hash_mm3.hh"#include "BLI_listbase.h"#include "BLI_string.h"#include "RE_pipeline.h"#include "MEM_guardedalloc.h"#include <cctype>#include <cstring>#include <iomanip>#include <sstream>#include <string>#include <string_view>Go to the source code of this file.
Classes | |
| struct | CryptomatteSession |
Namespaces | |
| namespace | blender |
| namespace | blender::bke |
| namespace | blender::bke::cryptomatte |
| namespace | blender::bke::cryptomatte::manifest |
Variables | |
| constexpr StringRef | blender::bke::cryptomatte::manifest::WHITESPACES = " \t\n\v\f\r" |
|
static |
Definition at line 339 of file cryptomatte.cc.
References blender::bke::cryptomatte::BKE_cryptomatte_meta_data_key(), and BKE_render_result_stamp_data().
Referenced by BKE_cryptomatte_store_metadata().
| void BKE_cryptomatte_add_layer | ( | CryptomatteSession * | session, |
| const char * | layer_name ) |
Definition at line 195 of file cryptomatte.cc.
References CryptomatteSession::add_layer().
| uint32_t BKE_cryptomatte_asset_hash | ( | CryptomatteSession * | session, |
| const char * | layer_name, | ||
| const Object * | object ) |
Definition at line 233 of file cryptomatte.cc.
References BKE_cryptomatte_object_hash(), and Object::parent.
| char * BKE_cryptomatte_entries_to_matte_id | ( | NodeCryptomatte * | node_storage | ) |
Definition at line 263 of file cryptomatte.cc.
References BLI_dynstr_append(), BLI_dynstr_appendf(), BLI_dynstr_free(), BLI_dynstr_get_cstring(), BLI_dynstr_nappend(), BLI_dynstr_new(), BLI_strnlen(), NodeCryptomatte::entries, LISTBASE_FOREACH, and result.
| bool BKE_cryptomatte_find_name | ( | const CryptomatteSession * | session, |
| const float | encoded_hash, | ||
| char * | r_name, | ||
| int | name_maxncpy ) |
Definition at line 249 of file cryptomatte.cc.
References BLI_strncpy().
| void BKE_cryptomatte_free | ( | CryptomatteSession * | session | ) |
Definition at line 200 of file cryptomatte.cc.
References BLI_assert.
Referenced by eyedropper_exit(), and blender::bke::cryptomatte::CryptomatteSessionDeleter::operator()().
Definition at line 206 of file cryptomatte.cc.
References hash.
Referenced by blender::bke::cryptomatte::CryptomatteLayer::add_ID(), BKE_cryptomatte_matte_id_to_entries(), eyedropper_cryptomatte_sample_view3d_fl(), and blender::eevee::Cryptomatte::register_id().
Definition at line 244 of file cryptomatte.cc.
References blender::bke::cryptomatte::CryptomatteHash::float_encoded().
Referenced by BKE_cryptomatte_matte_id_to_entries(), eyedropper_cryptomatte_sample_view3d_fl(), blender::bke::cryptomatte::CryptomatteLayer::operator[](), and blender::eevee::Cryptomatte::register_id().
| CryptomatteSession * BKE_cryptomatte_init | ( | void | ) |
Definition at line 171 of file cryptomatte.cc.
| CryptomatteSession * BKE_cryptomatte_init_from_render_result | ( | const RenderResult * | render_result | ) |
Definition at line 177 of file cryptomatte.cc.
References RenderResult::stamp_data.
| CryptomatteSession * BKE_cryptomatte_init_from_scene | ( | const Scene * | scene, |
| bool | build_meta_data ) |
Definition at line 183 of file cryptomatte.cc.
| CryptomatteSession * BKE_cryptomatte_init_from_view_layer | ( | const ViewLayer * | view_layer | ) |
Definition at line 189 of file cryptomatte.cc.
| uint32_t BKE_cryptomatte_material_hash | ( | CryptomatteSession * | session, |
| const char * | layer_name, | ||
| const Material * | material ) |
Definition at line 221 of file cryptomatte.cc.
References BLI_assert, CryptomatteSession::layers, and blender::Map< Key, Value, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::lookup_ptr().
| void BKE_cryptomatte_matte_id_to_entries | ( | NodeCryptomatte * | node_storage, |
| const char * | matte_id ) |
Definition at line 284 of file cryptomatte.cc.
References BKE_cryptomatte_hash(), BKE_cryptomatte_hash_to_float(), BLI_addtail(), BLI_freelistN(), CryptomatteEntry::encoded_hash, NodeCryptomatte::entries, hash, NodeCryptomatte::matte_id, MEM_dupallocN, MEM_SAFE_FREE, CryptomatteEntry::name, STREQ, and STRNCPY.
Referenced by blo_do_versions_290().
| uint32_t BKE_cryptomatte_object_hash | ( | CryptomatteSession * | session, |
| const char * | layer_name, | ||
| const Object * | object ) |
Definition at line 212 of file cryptomatte.cc.
References BLI_assert, CryptomatteSession::layers, and blender::Map< Key, Value, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::lookup_ptr().
Referenced by BKE_cryptomatte_asset_hash().
| void BKE_cryptomatte_store_metadata | ( | const CryptomatteSession * | session, |
| RenderResult * | render_result ) |
|
static |
Definition at line 334 of file cryptomatte.cc.
References BLI_hash_mm3().
Referenced by blender::bke::cryptomatte::cryptomatte_layer_name_hash().