diff --git a/examples/ExampleApps/LabelDrawableExampleApp.cpp b/examples/ExampleApps/LabelDrawableExampleApp.cpp index 1ca40b7..72271d8 100644 --- a/examples/ExampleApps/LabelDrawableExampleApp.cpp +++ b/examples/ExampleApps/LabelDrawableExampleApp.cpp @@ -88,6 +88,7 @@ namespace OpenVulkano label.AddText("Additional text" + std::to_string(j)); } } + m_drawablesPool[i].SetIsHittable(true); m_scene.GetRoot()->AddChild(&m_nodesPool[i]); m_nodesPool[i].SetMatrix(Math::Utils::translate(glm::mat4x4(1.f), Vector3f(-5 + std::rand() % 5, -5 + std::rand() % 5, -std::rand() % 10))); m_nodesPool[i].AddDrawable(&m_drawablesPool[i]); diff --git a/examples/ExampleApps/MovingCubeApp.cpp b/examples/ExampleApps/MovingCubeApp.cpp index 1f637b0..a866e9f 100644 --- a/examples/ExampleApps/MovingCubeApp.cpp +++ b/examples/ExampleApps/MovingCubeApp.cpp @@ -71,6 +71,8 @@ namespace OpenVulkano void CompleteSceneElement(SceneElement *dest) { dest->m_drawable.Init(&m_shader, &dest->m_geometry, &m_material); + dest->m_drawable.SetIsHittable(true); + //dest->m_geometry.freeAfterUpload = false; dest->m_node.Init(); m_scene.GetRoot()->AddChild(&dest->m_node); dest->m_node.SetUpdateFrequency(Scene::UpdateFrequency::Always); @@ -81,24 +83,28 @@ namespace OpenVulkano void CreateSceneElement(SceneElement *dest, const Math::Vector4f &color, float scale) { dest->m_geometry = Scene::GeometryFactory::MakeCube(scale, scale, scale, color); + dest->m_geometry.name = fmt::format("Cube {} {} {}", color.r, color.g, color.b); CompleteSceneElement(dest); } void CreatePlane(SceneElement *dest, const Math::Vector4f &color) { dest->m_geometry = Scene::GeometryFactory::MakePlane(1, 1, color); + dest->m_geometry.name = "Plane"; CompleteSceneElement(dest); } void CreateSphere(SceneElement *dest, const Math::Vector4f &color) { dest->m_geometry = Scene::GeometryFactory::MakeSphere(1, 32, 16, color); + dest->m_geometry.name = "Sphere"; CompleteSceneElement(dest); } void CreateHemisphere(SceneElement *dest, const Math::Vector4f &color) { dest->m_geometry = Scene::GeometryFactory::MakeHemisphere(1, 16, 16, color); + dest->m_geometry.name = "Hemisphere"; CompleteSceneElement(dest); } @@ -106,18 +112,21 @@ namespace OpenVulkano { dest->m_geometry = Scene::GeometryFactory::MakeTriangle( Math::Vector3f(0.5, 0., 0.), Math::Vector3f(0., 0.5, 0.), Math::Vector3f(-0.5, 0., 0.), color); + dest->m_geometry.name = "Triangle"; CompleteSceneElement(dest); } void CreateCylinder(SceneElement *dest, const Math::Vector4f &color) { dest->m_geometry = Scene::GeometryFactory::MakeCylinder(1, 3, 64, color); + dest->m_geometry.name = "Cylinder"; CompleteSceneElement(dest); } void CreatePyramid(SceneElement *dest, const Math::Vector4f &color) { dest->m_geometry = Scene::GeometryFactory::MakePyramid(0.5, 2, color); + dest->m_geometry.name = "Pyramid"; CompleteSceneElement(dest); }