The main goal here is to rename things in a way that makes sense for simulation baking, but also for the upcoming bake node. This also removes some versioning code from 3.6 which initialized the default bake path. Baked data from back then can't be loaded anymore anyway, and the way the default path is generated is different now as well. Pull Request: https://projects.blender.org/blender/blender/pulls/111845
41 lines
1.1 KiB
C++
41 lines
1.1 KiB
C++
/* SPDX-FileCopyrightText: 2023 Blender Authors
|
|
*
|
|
* SPDX-License-Identifier: GPL-2.0-or-later */
|
|
|
|
#pragma once
|
|
|
|
struct NodesModifierData;
|
|
struct Object;
|
|
|
|
namespace blender::bke::bake {
|
|
struct ModifierCache;
|
|
}
|
|
namespace blender::nodes::geo_eval_log {
|
|
class GeoModifierLog;
|
|
}
|
|
|
|
/**
|
|
* Rebuild the list of properties based on the sockets exposed as the modifier's node group
|
|
* inputs. If any properties correspond to the old properties by name and type, carry over
|
|
* the values.
|
|
*/
|
|
void MOD_nodes_update_interface(Object *object, NodesModifierData *nmd);
|
|
|
|
namespace blender {
|
|
|
|
struct NodesModifierRuntime {
|
|
/**
|
|
* Contains logged information from the last evaluation.
|
|
* This can be used to help the user to debug a node tree.
|
|
*/
|
|
std::unique_ptr<nodes::geo_eval_log::GeoModifierLog> eval_log;
|
|
/**
|
|
* Simulation cache that is shared between original and evaluated modifiers. This allows the
|
|
* original modifier to be removed, without also removing the simulation state which may still be
|
|
* used by the evaluated modifier.
|
|
*/
|
|
std::shared_ptr<bke::bake::ModifierCache> cache;
|
|
};
|
|
|
|
} // namespace blender
|