aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSyoyo Fujita <syoyo@lighttransport.com>2017-09-15 16:34:31 +0900
committerSyoyo Fujita <syoyo@lighttransport.com>2017-09-15 16:34:31 +0900
commit7c7335c907907d04bb22c56d1af59e5c88e943f6 (patch)
treedd8896e7d7e83347f26d9532e5458c6752e131fe
parent3a9483ca6f06cfbf8215753981c8af2965d3afaa (diff)
downloadtinyobjloader-7c7335c907907d04bb22c56d1af59e5c88e943f6.tar.gz
Add test for parsing bump_multipler for normal map.
-rw-r--r--models/norm-texopt.mtl7
-rw-r--r--models/norm-texopt.obj7
-rw-r--r--tests/tester.cc18
3 files changed, 32 insertions, 0 deletions
diff --git a/models/norm-texopt.mtl b/models/norm-texopt.mtl
new file mode 100644
index 0000000..e2d4a2c
--- /dev/null
+++ b/models/norm-texopt.mtl
@@ -0,0 +1,7 @@
+newmtl default
+Ka 0 0 0
+Kd 0 0 0
+Ks 0 0 0
+Kt 0.1 0.2 0.3
+norm -bm 3 normalmap.jpg
+
diff --git a/models/norm-texopt.obj b/models/norm-texopt.obj
new file mode 100644
index 0000000..babe94d
--- /dev/null
+++ b/models/norm-texopt.obj
@@ -0,0 +1,7 @@
+mtllib norm-texopt.mtl
+o Test
+v 1.864151 -1.219172 -5.532511
+v 0.575869 -0.666304 5.896140
+v 0.940448 1.000000 -1.971128
+usemtl default
+f 1 2 3
diff --git a/tests/tester.cc b/tests/tester.cc
index d4070c9..5c31cc9 100644
--- a/tests/tester.cc
+++ b/tests/tester.cc
@@ -625,6 +625,24 @@ TEST_CASE("g_ignored", "[Issue138]") {
}
+TEST_CASE("norm_texopts", "[norm]") {
+ tinyobj::attrib_t attrib;
+ std::vector<tinyobj::shape_t> shapes;
+ std::vector<tinyobj::material_t> materials;
+
+ std::string err;
+ bool ret = tinyobj::LoadObj(&attrib, &shapes, &materials, &err, "../models/norm-texopt.obj", gMtlBasePath);
+
+ if (!err.empty()) {
+ std::cerr << err << std::endl;
+ }
+ REQUIRE(true == ret);
+ REQUIRE(1 == shapes.size());
+ REQUIRE(1 == materials.size());
+ REQUIRE(3.0 == Approx(materials[0].normal_texopt.bump_multiplier));
+
+}
+
#if 0
int
main(