所有权添加完成
This commit is contained in:
@@ -5,8 +5,8 @@
|
||||
#include "renderive/scene/Scene.hpp"
|
||||
struct Scene3D_Context_Test_Renderable : Renderable_Base {
|
||||
explicit Scene3D_Context_Test_Renderable(Scene_Base& scene) : Renderable_Base(scene) {}
|
||||
void prepare(const Scene_Render_Context& context) override {
|
||||
scene_is_3d = dynamic_cast<Scene_3D_Base*>(context.scene) != nullptr;
|
||||
void prepare(const Prepare_Render_Context&) override {
|
||||
scene_is_3d = dynamic_cast<Scene_3D_Base*>(&scene()) != nullptr;
|
||||
++render_count;
|
||||
}
|
||||
std::atomic<int> render_count{};
|
||||
@@ -23,7 +23,7 @@ TEST(scene3d_context_test, uses_scene_3d_base_contract) {
|
||||
}
|
||||
struct Scene3D_Dependency_Cache_Test_Renderable : Renderable_Base {
|
||||
explicit Scene3D_Dependency_Cache_Test_Renderable(Scene_Base& scene) : Renderable_Base(scene, {.cache_enabled = true}) {}
|
||||
void prepare(const Scene_Render_Context&) override {
|
||||
void prepare(const Prepare_Render_Context&) override {
|
||||
++render_count;
|
||||
}
|
||||
int render_count{};
|
||||
@@ -36,8 +36,8 @@ TEST(scene3d_context_test, propagates_cache_invalidation_through_unsorted_depend
|
||||
scene.attach_renderable(leaf);
|
||||
scene.attach_renderable(middle);
|
||||
scene.attach_renderable(root);
|
||||
scene.set_dependency_parent(*leaf, middle.get());
|
||||
scene.set_dependency_parent(*middle, root.get());
|
||||
scene.set_dependency_parent(leaf, middle);
|
||||
scene.set_dependency_parent(middle, root);
|
||||
scene.render();
|
||||
scene.wait_for_render();
|
||||
EXPECT_EQ(root->render_count, 1);
|
||||
@@ -58,14 +58,14 @@ TEST(scene3d_context_test, detach_parent_promotes_children_and_invalidates_depen
|
||||
scene.attach_renderable(grandparent);
|
||||
scene.attach_renderable(parent);
|
||||
scene.attach_renderable(child);
|
||||
scene.set_display_parent(*parent, grandparent.get());
|
||||
scene.set_display_parent(*child, parent.get());
|
||||
scene.set_dependency_parent(*parent, grandparent.get());
|
||||
scene.set_dependency_parent(*child, parent.get());
|
||||
scene.set_display_parent(parent, grandparent);
|
||||
scene.set_display_parent(child, parent);
|
||||
scene.set_dependency_parent(parent, grandparent);
|
||||
scene.set_dependency_parent(child, parent);
|
||||
scene.render();
|
||||
scene.wait_for_render();
|
||||
EXPECT_EQ(child->render_count, 1);
|
||||
scene.detach_renderable(*parent);
|
||||
scene.detach_renderable(parent);
|
||||
const auto topology = scene.topology_snapshot();
|
||||
bool display_checked{};
|
||||
bool dependency_checked{};
|
||||
|
||||
Reference in New Issue
Block a user