Add managed render pipeline selection bridge
This commit is contained in:
@@ -10,6 +10,7 @@
|
||||
#include <XCEngine/Rendering/Execution/CameraRenderer.h>
|
||||
#include <XCEngine/Rendering/Execution/RenderPipelineHost.h>
|
||||
#include <XCEngine/Rendering/Graph/RenderGraph.h>
|
||||
#include <XCEngine/Rendering/Pipelines/ManagedScriptableRenderPipelineAsset.h>
|
||||
#include <XCEngine/Rendering/Pipelines/ScriptableRenderPipelineHost.h>
|
||||
#include <XCEngine/Rendering/RenderPipelineAsset.h>
|
||||
#include <XCEngine/Rendering/RenderSurface.h>
|
||||
@@ -3717,6 +3718,29 @@ TEST(ScriptableRenderPipelineHostAsset_Test, CreatesHostFromRendererAssetAndForw
|
||||
EXPECT_EQ(assetState->createCalls, 1);
|
||||
}
|
||||
|
||||
TEST(CameraRenderer_Test, DefaultPipelineAssetUsesManagedSelectionWhenPresent) {
|
||||
const Pipelines::ManagedRenderPipelineAssetDescriptor descriptor = {
|
||||
"GameScripts",
|
||||
"Gameplay",
|
||||
"ManagedRenderPipelineProbeAsset"
|
||||
};
|
||||
Pipelines::SetManagedRenderPipelineAssetDescriptor(descriptor);
|
||||
|
||||
CameraRenderer renderer;
|
||||
auto* asset =
|
||||
dynamic_cast<const Pipelines::ManagedScriptableRenderPipelineAsset*>(
|
||||
renderer.GetPipelineAsset());
|
||||
ASSERT_NE(asset, nullptr);
|
||||
EXPECT_EQ(asset->GetDescriptor().assemblyName, "GameScripts");
|
||||
EXPECT_EQ(asset->GetDescriptor().namespaceName, "Gameplay");
|
||||
EXPECT_EQ(asset->GetDescriptor().className, "ManagedRenderPipelineProbeAsset");
|
||||
EXPECT_NE(
|
||||
dynamic_cast<Pipelines::ScriptableRenderPipelineHost*>(renderer.GetPipeline()),
|
||||
nullptr);
|
||||
|
||||
Pipelines::ClearManagedRenderPipelineAssetDescriptor();
|
||||
}
|
||||
|
||||
TEST(SceneRenderer_Test, CreatesPipelineInstancesFromPipelineAssetsAndShutsDownReplacedPipelines) {
|
||||
Scene scene("SceneRendererAssetScene");
|
||||
|
||||
|
||||
Reference in New Issue
Block a user