Add backpack editor startup scene
This commit is contained in:
@@ -247,6 +247,40 @@ TEST(RenderSceneExtractor_Test, SortsOpaqueFrontToBackAndTransparentBackToFront)
|
||||
delete transparentFarMesh;
|
||||
}
|
||||
|
||||
TEST(RenderSceneExtractor_Test, FallsBackToEmbeddedMeshMaterialsWhenRendererHasNoExplicitSlots) {
|
||||
Scene scene("EmbeddedMaterialScene");
|
||||
|
||||
GameObject* cameraObject = scene.CreateGameObject("Camera");
|
||||
auto* camera = cameraObject->AddComponent<CameraComponent>();
|
||||
camera->SetPrimary(true);
|
||||
|
||||
GameObject* renderObject = scene.CreateGameObject("EmbeddedBackpack");
|
||||
auto* meshFilter = renderObject->AddComponent<MeshFilterComponent>();
|
||||
auto* meshRenderer = renderObject->AddComponent<MeshRendererComponent>();
|
||||
|
||||
Mesh* mesh = CreateSectionedTestMesh("Meshes/embedded.mesh", { 0u });
|
||||
Material* embeddedMaterial = CreateTestMaterial(
|
||||
"Materials/embedded.mat",
|
||||
static_cast<int32_t>(MaterialRenderQueue::Transparent),
|
||||
"ForwardLit",
|
||||
"ForwardBase");
|
||||
mesh->AddMaterial(embeddedMaterial);
|
||||
meshFilter->SetMesh(mesh);
|
||||
meshRenderer->ClearMaterials();
|
||||
|
||||
RenderSceneExtractor extractor;
|
||||
const RenderSceneData sceneData = extractor.Extract(scene, nullptr, 800, 600);
|
||||
|
||||
ASSERT_EQ(sceneData.visibleItems.size(), 1u);
|
||||
EXPECT_EQ(sceneData.visibleItems[0].material, embeddedMaterial);
|
||||
EXPECT_EQ(sceneData.visibleItems[0].renderQueue, static_cast<int32_t>(MaterialRenderQueue::Transparent));
|
||||
EXPECT_EQ(ResolveMaterial(sceneData.visibleItems[0]), embeddedMaterial);
|
||||
|
||||
meshFilter->ClearMesh();
|
||||
delete embeddedMaterial;
|
||||
delete mesh;
|
||||
}
|
||||
|
||||
TEST(RenderMaterialUtility_Test, MatchesBuiltinForwardPassMetadata) {
|
||||
Material forwardMaterial;
|
||||
forwardMaterial.SetShaderPass("ForwardLit");
|
||||
|
||||
Reference in New Issue
Block a user