rendering: extract default native scene backend
This commit is contained in:
@@ -4833,6 +4833,55 @@ TEST(
|
||||
Pipelines::ClearManagedRenderPipelineBridge();
|
||||
}
|
||||
|
||||
TEST(
|
||||
DefaultNativeSceneBackend_Test,
|
||||
ReusesBuiltinForwardFeaturesWithoutInstallingFallbackStandalonePasses) {
|
||||
std::unique_ptr<SceneDrawBackend> sceneDrawBackend =
|
||||
Internal::CreateDefaultSceneDrawBackend();
|
||||
ASSERT_NE(sceneDrawBackend, nullptr);
|
||||
|
||||
SceneRenderFeatureHost* const featureHost =
|
||||
sceneDrawBackend->GetSceneFeatureHost();
|
||||
ASSERT_NE(featureHost, nullptr);
|
||||
EXPECT_EQ(featureHost->GetFeaturePassCount(), 2u);
|
||||
|
||||
auto* pipeline =
|
||||
dynamic_cast<RenderPipeline*>(sceneDrawBackend.get());
|
||||
ASSERT_NE(pipeline, nullptr);
|
||||
EXPECT_EQ(
|
||||
pipeline->GetCameraFrameStandalonePass(CameraFrameStage::DepthOnly),
|
||||
nullptr);
|
||||
EXPECT_EQ(
|
||||
pipeline->GetCameraFrameStandalonePass(CameraFrameStage::ShadowCaster),
|
||||
nullptr);
|
||||
}
|
||||
|
||||
TEST(
|
||||
DefaultPipelineBackendAsset_Test,
|
||||
CreatesFallbackPipelineWithSameDefaultNativeFeatureHost) {
|
||||
const std::shared_ptr<const RenderPipelineAsset> backendAsset =
|
||||
Internal::CreateDefaultPipelineBackendAsset();
|
||||
ASSERT_NE(backendAsset, nullptr);
|
||||
|
||||
std::unique_ptr<RenderPipeline> pipeline = backendAsset->CreatePipeline();
|
||||
ASSERT_NE(pipeline, nullptr);
|
||||
|
||||
auto* sceneDrawBackend =
|
||||
dynamic_cast<SceneDrawBackend*>(pipeline.get());
|
||||
ASSERT_NE(sceneDrawBackend, nullptr);
|
||||
SceneRenderFeatureHost* const featureHost =
|
||||
sceneDrawBackend->GetSceneFeatureHost();
|
||||
ASSERT_NE(featureHost, nullptr);
|
||||
EXPECT_EQ(featureHost->GetFeaturePassCount(), 2u);
|
||||
|
||||
EXPECT_NE(
|
||||
pipeline->GetCameraFrameStandalonePass(CameraFrameStage::DepthOnly),
|
||||
nullptr);
|
||||
EXPECT_NE(
|
||||
pipeline->GetCameraFrameStandalonePass(CameraFrameStage::ShadowCaster),
|
||||
nullptr);
|
||||
}
|
||||
|
||||
TEST(ManagedScriptableRenderPipelineAsset_Test, LetsManagedBridgeConfigureCameraRenderRequests) {
|
||||
Pipelines::ClearManagedRenderPipelineBridge();
|
||||
|
||||
|
||||
Reference in New Issue
Block a user