diff options
author | Dan Goodliffe <dan@randomdan.homeip.net> | 2023-04-10 18:45:13 +0100 |
---|---|---|
committer | Dan Goodliffe <dan@randomdan.homeip.net> | 2023-04-10 18:45:13 +0100 |
commit | b25bc3cc32c5a9057c66ad282fa1cdfe0ed6094a (patch) | |
tree | 469ffd495b9114ff7f7a7ccca75e4a1977c1f662 /test | |
parent | Support loading textures from an in memory buffer (diff) | |
download | ilt-b25bc3cc32c5a9057c66ad282fa1cdfe0ed6094a.tar.bz2 ilt-b25bc3cc32c5a9057c66ad282fa1cdfe0ed6094a.tar.xz ilt-b25bc3cc32c5a9057c66ad282fa1cdfe0ed6094a.zip |
First cut loading assets using assimp
This is far from perfect, specifically the created texture atlas is not compatibile with wrapping texture UVs
Diffstat (limited to 'test')
-rw-r--r-- | test/perf-assetFactory.cpp | 11 | ||||
-rw-r--r-- | test/test-assetFactory.cpp | 17 |
2 files changed, 28 insertions, 0 deletions
diff --git a/test/perf-assetFactory.cpp b/test/perf-assetFactory.cpp index c90ac52..147e4ba 100644 --- a/test/perf-assetFactory.cpp +++ b/test/perf-assetFactory.cpp @@ -14,6 +14,17 @@ brush47xml_load(benchmark::State & state) } } +static void +foliagexml_load(benchmark::State & state) +{ + TestMainWindow window; + + for (auto _ : state) { + benchmark::DoNotOptimize(AssetFactory::loadXML(RESDIR "/foliage.xml")); + } +} + BENCHMARK(brush47xml_load); +BENCHMARK(foliagexml_load); BENCHMARK_MAIN(); diff --git a/test/test-assetFactory.cpp b/test/test-assetFactory.cpp index 54168aa..dd458ca 100644 --- a/test/test-assetFactory.cpp +++ b/test/test-assetFactory.cpp @@ -8,6 +8,8 @@ #include "assetFactory/assetFactory.h" #include "assetFactory/object.h" #include "assetFactory/texturePacker.h" +#include "game/scenary/foliage.h" +#include "game/scenary/plant.h" #include "game/vehicles/railVehicle.h" #include "game/vehicles/railVehicleClass.h" #include "gfx/gl/sceneRenderer.h" @@ -96,6 +98,21 @@ BOOST_AUTO_TEST_CASE(brush47xml, *boost::unit_test::timeout(5)) render(); } + +BOOST_AUTO_TEST_CASE(foliage, *boost::unit_test::timeout(5)) +{ + auto mf = AssetFactory::loadXML(RESDIR "/foliage.xml"); + BOOST_REQUIRE(mf); + auto tree_01_1 = mf->assets.at("Tree-01-1"); + BOOST_REQUIRE(tree_01_1); + auto tree_01_1_f = std::dynamic_pointer_cast<Foliage>(tree_01_1); + BOOST_REQUIRE(tree_01_1_f); + + auto plant = std::make_shared<Plant>(tree_01_1_f, Location {}); + objects.objects.push_back(plant); + + render(); +} BOOST_AUTO_TEST_SUITE_END(); template<typename T> using InOut = std::tuple<T, T>; |