From 9fd88b700a23e4d00e715de9ca10312b2ecd3892 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20Vondru=C5=A1?= Date: Wed, 11 Jan 2012 21:20:41 +0100 Subject: [PATCH] Using icosahedron primitive data in MeshBuilderBenchmark. --- src/Test/CMakeLists.txt | 1 + src/Test/MeshBuilderBenchmark.cpp | 47 +++---------------------------- 2 files changed, 5 insertions(+), 43 deletions(-) diff --git a/src/Test/CMakeLists.txt b/src/Test/CMakeLists.txt index 8ad884716..be254de33 100644 --- a/src/Test/CMakeLists.txt +++ b/src/Test/CMakeLists.txt @@ -3,3 +3,4 @@ corrade_add_test(CameraTest CameraTest.h CameraTest.cpp Magnum) corrade_add_test(SceneTest SceneTest.h SceneTest.cpp Magnum) corrade_add_test(MeshBuilderTest MeshBuilderTest.h MeshBuilderTest.cpp Magnum) corrade_add_test(MeshBuilderBenchmark MeshBuilderBenchmark.h MeshBuilderBenchmark.cpp Magnum) +target_link_libraries(MeshBuilderBenchmark ${MAGNUM_PRIMITIVES_LIBRARY}) diff --git a/src/Test/MeshBuilderBenchmark.cpp b/src/Test/MeshBuilderBenchmark.cpp index c1dcdd87a..bdf6754e8 100644 --- a/src/Test/MeshBuilderBenchmark.cpp +++ b/src/Test/MeshBuilderBenchmark.cpp @@ -19,55 +19,16 @@ #include "MeshBuilder.h" #include "Magnum.h" +#include "Primitives/Icosphere.h" QTEST_APPLESS_MAIN(Magnum::Test::MeshBuilderBenchmark) namespace Magnum { namespace Test { -/* Vertices = normals */ -static const Vector4 icoVertices[] = { - Vector4(0, -0.525731f, 0.850651f), - Vector4(0.850651f, 0, 0.525731f), - Vector4(0.850651f, 0, -0.525731f), - Vector4(-0.850651f, 0, -0.525731f), - Vector4(-0.850651f, 0, 0.525731f), - Vector4(-0.525731f, 0.850651f, 0), - Vector4(0.525731f, 0.850651f, 0), - Vector4(0.525731f, -0.850651f, 0), - Vector4(-0.525731f, -0.850651f, 0), - Vector4(0, -0.525731f, -0.850651f), - Vector4(0, 0.525731f, -0.850651f), - Vector4(0, 0.525731f, 0.850651f), -}; - -/* Vertex indices */ -static const GLubyte icoIndices[] = { - 1, 2, 6, - 1, 7, 2, - 3, 4, 5, - 4, 3, 8, - 6, 5, 11, - 5, 6, 10, - 9, 10, 2, - 10, 9, 3, - 7, 8, 9, - 8, 7, 0, - 11, 0, 1, - 0, 11, 4, - 6, 2, 10, - 1, 6, 11, - 3, 5, 10, - 5, 4, 11, - 2, 7, 9, - 7, 1, 0, - 3, 9, 8, - 4, 8, 0 -}; - void MeshBuilderBenchmark::subdivide() { QBENCHMARK { MeshBuilder builder; - builder.setData(icoVertices, icoIndices, 12, 60); + builder.setData(Primitives::Icosahedron::vertices, Primitives::Icosahedron::indices, 12, 60); /* Subdivide 5 times */ builder.subdivide(interpolator); @@ -81,7 +42,7 @@ void MeshBuilderBenchmark::subdivide() { void MeshBuilderBenchmark::subdivideAndCleanMeshAfter() { QBENCHMARK { MeshBuilder builder; - builder.setData(icoVertices, icoIndices, 12, 60); + builder.setData(Primitives::Icosahedron::vertices, Primitives::Icosahedron::indices, 12, 60); /* Subdivide 5 times */ builder.subdivide(interpolator); @@ -97,7 +58,7 @@ void MeshBuilderBenchmark::subdivideAndCleanMeshAfter() { void MeshBuilderBenchmark::subdivideAndCleanMeshBetween() { QBENCHMARK { MeshBuilder builder; - builder.setData(icoVertices, icoIndices, 12, 60); + builder.setData(Primitives::Icosahedron::vertices, Primitives::Icosahedron::indices, 12, 60); /* Subdivide 5 times */ builder.subdivide(interpolator);