修改一些

This commit is contained in:
2026-08-18 11:09:48 +08:00
parent 182fa2232a
commit 704a6f02ff
36 changed files with 235 additions and 261 deletions
@@ -234,13 +234,45 @@ void renderive::detail::Renderable_Build_Access::set_object_name(
"object_name is immutable after scene construction");
implementation.object_name = std::move(name);
}
void renderive::detail::Renderable_Build_Access::set_topology(
Renderable_Base& renderable, renderive::Renderable_Build_Topology topology) {
auto& implementation = renderable.d_func();
void Renderable_Base::add_build_dependency_parent(
const renderive_Owner<Renderable_Base>& parent) {
auto& implementation = d_func();
if (implementation.real_time_data_state->scene_lifetime)
::renderive::error::unexpected<std::logic_error>(
"renderable build topology is immutable after scene construction");
implementation.build_topology = std::move(topology);
implementation.build_topology.dependency_parents.emplace_back(
parent.share());
}
void Renderable_Base::add_build_display_parent(
const renderive_Owner<Renderable_Base>& parent) {
auto& implementation = d_func();
if (implementation.real_time_data_state->scene_lifetime)
::renderive::error::unexpected<std::logic_error>(
"renderable build topology is immutable after scene construction");
implementation.build_topology.display_parents.emplace_back(parent.share());
}
void Renderable_Base::add_build_display_child(
const renderive_Owner<Renderable_Base>& child) {
auto& implementation = d_func();
if (implementation.real_time_data_state->scene_lifetime)
::renderive::error::unexpected<std::logic_error>(
"renderable build topology is immutable after scene construction");
implementation.build_topology.display_children.emplace_back(child.share());
}
void renderive::detail::Renderable_Build_Access::add_dependency_parent(
Renderable_Base& renderable,
const renderive_Owner<Renderable_Base>& parent) {
renderable.add_build_dependency_parent(parent);
}
void renderive::detail::Renderable_Build_Access::add_display_parent(
Renderable_Base& renderable,
const renderive_Owner<Renderable_Base>& parent) {
renderable.add_build_display_parent(parent);
}
void renderive::detail::Renderable_Build_Access::add_display_child(
Renderable_Base& renderable,
const renderive_Owner<Renderable_Base>& child) {
renderable.add_build_display_child(child);
}
const renderive::Renderable_Build_Topology&
renderive::detail::Renderable_Build_Access::topology(