Blender V5.0
blender::bke::bake::GeometryBakeItem Class Reference

#include <BKE_bake_items.hh>

Inherits blender::bke::bake::BakeItem.

Public Member Functions

 GeometryBakeItem (GeometrySet geometry)
void count_memory (MemoryCounter &memory) const override
Public Member Functions inherited from blender::bke::bake::BakeItem
virtual ~BakeItem ()=default

Static Public Member Functions

static void prepare_geometry_for_bake (GeometrySet &geometry, BakeDataBlockMap *data_block_map)
static void try_restore_data_blocks (GeometrySet &geometry, BakeDataBlockMap *data_block_map)

Public Attributes

GeometrySet geometry
Public Attributes inherited from blender::bke::bake::BakeItem
std::string name

Detailed Description

Definition at line 56 of file BKE_bake_items.hh.

Constructor & Destructor Documentation

◆ GeometryBakeItem()

blender::bke::bake::GeometryBakeItem::GeometryBakeItem ( GeometrySet geometry)

Definition at line 25 of file bake_items.cc.

References geometry.

Member Function Documentation

◆ count_memory()

void blender::bke::bake::GeometryBakeItem::count_memory ( MemoryCounter & memory) const
overridevirtual

Reimplemented from blender::bke::bake::BakeItem.

Definition at line 27 of file bake_items.cc.

References geometry.

◆ prepare_geometry_for_bake()

void blender::bke::bake::GeometryBakeItem::prepare_geometry_for_bake ( GeometrySet & geometry,
BakeDataBlockMap * data_block_map )
static

Removes parts of the geometry that can't be baked/cached (anonymous attributes) and replaces data-block pointers with BakeDataBlockID.

Definition at line 105 of file bake_items.cc.

References blender::bke::GeometrySet::ensure_owns_all_data(), and blender::bke::bake::prepare_geometry_for_bake_recursive().

Referenced by blender::bke::bake::move_socket_values_to_bake_items().

◆ try_restore_data_blocks()

void blender::bke::bake::GeometryBakeItem::try_restore_data_blocks ( GeometrySet & geometry,
BakeDataBlockMap * data_block_map )
static

The baked data does not have raw pointers to referenced data-blocks because those would become dangling quickly. Instead it has weak name-based references (BakeDataBlockID). This function attempts to restore the actual data block pointers based on the weak references using the given mapping.

Definition at line 173 of file bake_items.cc.

References blender::bke::bake::restore_data_blocks_recursive().

Referenced by blender::bke::bake::copy_bake_item_to_socket_value().

Member Data Documentation

◆ geometry


The documentation for this class was generated from the following files: