diff --git a/Dockerfile b/Dockerfile
index 5da5458f8..eb5715d0f 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -6,6 +6,7 @@ RUN apt-get update && apt-get install -y ninja-build \
RUN add-apt-repository ppa:ubuntu-toolchain-r/test && apt-get update
WORKDIR /opt
+RUN apt install zlib1g-dev
# Build Assimp
RUN git clone https://github.com/assimp/assimp.git /opt/assimp
diff --git a/test/models/IRR/EpisodeII_TheDwarfesStrikeBack.irr b/test/models/IRR/EpisodeII_TheDwarfesStrikeBack.irr
index a317ac61e..761ea0ad4 100644
--- a/test/models/IRR/EpisodeII_TheDwarfesStrikeBack.irr
+++ b/test/models/IRR/EpisodeII_TheDwarfesStrikeBack.irr
@@ -32,7 +32,7 @@
-
+
@@ -89,7 +89,7 @@
-
+
@@ -128,7 +128,7 @@
-
+
@@ -167,7 +167,7 @@
-
+
@@ -206,7 +206,7 @@
-
+
@@ -245,7 +245,7 @@
-
+
@@ -284,7 +284,7 @@
-
+
@@ -329,7 +329,7 @@
-
+
@@ -345,7 +345,7 @@
-
+
@@ -384,7 +384,7 @@
-
+
@@ -468,7 +468,7 @@
-
+
@@ -484,7 +484,7 @@
-
+
@@ -523,7 +523,7 @@
-
+
@@ -620,7 +620,7 @@
-
+
@@ -678,7 +678,7 @@
-
+
@@ -723,7 +723,7 @@
-
+
@@ -739,7 +739,7 @@
-
+
@@ -778,7 +778,7 @@
-
+
@@ -875,7 +875,7 @@
-
+
@@ -920,7 +920,7 @@
-
+
@@ -936,7 +936,7 @@
-
+
@@ -975,7 +975,7 @@
-
+
diff --git a/test/models/IRR/EpisodeII_TheDwarfesStrikeBack_UTF16LE.irr b/test/models/IRR/EpisodeII_TheDwarfesStrikeBack_UTF16LE.irr
index 9321cf93f..d109c67cc 100644
Binary files a/test/models/IRR/EpisodeII_TheDwarfesStrikeBack_UTF16LE.irr and b/test/models/IRR/EpisodeII_TheDwarfesStrikeBack_UTF16LE.irr differ
diff --git a/test/models/IRR/EpisodeI_ANewDwarf.irr b/test/models/IRR/EpisodeI_ANewDwarf.irr
index 65f65ad4b..c84073553 100644
--- a/test/models/IRR/EpisodeI_ANewDwarf.irr
+++ b/test/models/IRR/EpisodeI_ANewDwarf.irr
@@ -33,8 +33,8 @@
-
-
+
+
@@ -72,8 +72,8 @@
-
-
+
+
@@ -117,7 +117,7 @@
-
+
@@ -131,7 +131,7 @@
-
+
@@ -170,7 +170,7 @@
-
+
@@ -254,7 +254,7 @@
-
+
@@ -268,7 +268,7 @@
-
+
@@ -307,7 +307,7 @@
-
+
@@ -391,7 +391,7 @@
-
+
@@ -405,7 +405,7 @@
-
+
@@ -444,7 +444,7 @@
-
+
@@ -528,7 +528,7 @@
-
+
@@ -542,7 +542,7 @@
-
+
@@ -581,7 +581,7 @@
-
+
@@ -665,7 +665,7 @@
-
+
@@ -679,7 +679,7 @@
-
+
@@ -718,7 +718,7 @@
-
+
diff --git a/test/models/IRR/EpisodeI_ANewDwarf_UTF16LE.irr b/test/models/IRR/EpisodeI_ANewDwarf_UTF16LE.irr
index 5e5a68f2d..551a5ac9a 100644
Binary files a/test/models/IRR/EpisodeI_ANewDwarf_UTF16LE.irr and b/test/models/IRR/EpisodeI_ANewDwarf_UTF16LE.irr differ
diff --git a/test/models/IRR/animMesh.irr b/test/models/IRR/animMesh.irr
index 0e246bacf..5cd109d77 100644
--- a/test/models/IRR/animMesh.irr
+++ b/test/models/IRR/animMesh.irr
@@ -19,7 +19,7 @@
-
+
@@ -35,7 +35,7 @@
-
+
@@ -73,7 +73,7 @@
-
+
diff --git a/test/models/IRR/animMesh_UTF16LE.irr b/test/models/IRR/animMesh_UTF16LE.irr
index c041565ea..70f6374fa 100644
Binary files a/test/models/IRR/animMesh_UTF16LE.irr and b/test/models/IRR/animMesh_UTF16LE.irr differ
diff --git a/test/models/IRR/1.png b/test/models/IRR/assets/1.png
similarity index 100%
rename from test/models/IRR/1.png
rename to test/models/IRR/assets/1.png
diff --git a/test/models/IRR/SpiderTex.jpg b/test/models/IRR/assets/SpiderTex.jpg
similarity index 100%
rename from test/models/IRR/SpiderTex.jpg
rename to test/models/IRR/assets/SpiderTex.jpg
diff --git a/test/models/IRR/UVTransformTestImg.png b/test/models/IRR/assets/UVTransformTestImg.png
similarity index 100%
rename from test/models/IRR/UVTransformTestImg.png
rename to test/models/IRR/assets/UVTransformTestImg.png
diff --git a/test/models/IRR/axe.jpg b/test/models/IRR/assets/axe.jpg
similarity index 100%
rename from test/models/IRR/axe.jpg
rename to test/models/IRR/assets/axe.jpg
diff --git a/test/models/IRR/brownground_1-1.jpg b/test/models/IRR/assets/brownground_1-1.jpg
similarity index 100%
rename from test/models/IRR/brownground_1-1.jpg
rename to test/models/IRR/assets/brownground_1-1.jpg
diff --git a/test/models/IRR/crackedground_1-6.jpg b/test/models/IRR/assets/crackedground_1-6.jpg
similarity index 100%
rename from test/models/IRR/crackedground_1-6.jpg
rename to test/models/IRR/assets/crackedground_1-6.jpg
diff --git a/test/models/IRR/assets/default.png b/test/models/IRR/assets/default.png
new file mode 100644
index 000000000..fe9926e41
Binary files /dev/null and b/test/models/IRR/assets/default.png differ
diff --git a/test/models/IRR/assets/default_texture.png b/test/models/IRR/assets/default_texture.png
new file mode 100644
index 000000000..a1ad5979b
Binary files /dev/null and b/test/models/IRR/assets/default_texture.png differ
diff --git a/test/models/IRR/drkwood2.jpg b/test/models/IRR/assets/drkwood2.jpg
similarity index 100%
rename from test/models/IRR/drkwood2.jpg
rename to test/models/IRR/assets/drkwood2.jpg
diff --git a/test/models/IRR/dwarf.jpg b/test/models/IRR/assets/dwarf.jpg
similarity index 100%
rename from test/models/IRR/dwarf.jpg
rename to test/models/IRR/assets/dwarf.jpg
diff --git a/test/models/IRR/dwarf.x b/test/models/IRR/assets/dwarf.x
similarity index 100%
rename from test/models/IRR/dwarf.x
rename to test/models/IRR/assets/dwarf.x
diff --git a/test/models/IRR/earthSpherical.jpg b/test/models/IRR/assets/earthSpherical.jpg
similarity index 100%
rename from test/models/IRR/earthSpherical.jpg
rename to test/models/IRR/assets/earthSpherical.jpg
diff --git a/test/models/IRR/engineflare1.jpg b/test/models/IRR/assets/engineflare1.jpg
similarity index 100%
rename from test/models/IRR/engineflare1.jpg
rename to test/models/IRR/assets/engineflare1.jpg
diff --git a/test/models/IRR/assets/skybox/credits.txt b/test/models/IRR/assets/skybox/credits.txt
new file mode 100644
index 000000000..b2b601392
--- /dev/null
+++ b/test/models/IRR/assets/skybox/credits.txt
@@ -0,0 +1,11 @@
+This skybox is basing on a skydome texture from
+
+http://mikepan.homeip.net/earth
+
+Downloaded November 22th, 08
+Distribution note:
+"These royalty-free skydome textures work best when applied to a sphere or hemisphere"
+
+
+
+Thanks for your great work!
diff --git a/test/models/IRR/assets/skybox/default_skybox0.jpg b/test/models/IRR/assets/skybox/default_skybox0.jpg
new file mode 100644
index 000000000..0fe4d0890
Binary files /dev/null and b/test/models/IRR/assets/skybox/default_skybox0.jpg differ
diff --git a/test/models/IRR/assets/skybox/default_skybox1.jpg b/test/models/IRR/assets/skybox/default_skybox1.jpg
new file mode 100644
index 000000000..c4c286bff
Binary files /dev/null and b/test/models/IRR/assets/skybox/default_skybox1.jpg differ
diff --git a/test/models/IRR/assets/skybox/default_skybox2.jpg b/test/models/IRR/assets/skybox/default_skybox2.jpg
new file mode 100644
index 000000000..935f72579
Binary files /dev/null and b/test/models/IRR/assets/skybox/default_skybox2.jpg differ
diff --git a/test/models/IRR/assets/skybox/default_skybox3.jpg b/test/models/IRR/assets/skybox/default_skybox3.jpg
new file mode 100644
index 000000000..e8107ff99
Binary files /dev/null and b/test/models/IRR/assets/skybox/default_skybox3.jpg differ
diff --git a/test/models/IRR/assets/skybox/default_skyboxdn.jpg b/test/models/IRR/assets/skybox/default_skyboxdn.jpg
new file mode 100644
index 000000000..af66a6176
Binary files /dev/null and b/test/models/IRR/assets/skybox/default_skyboxdn.jpg differ
diff --git a/test/models/IRR/assets/skybox/default_skyboxup.jpg b/test/models/IRR/assets/skybox/default_skyboxup.jpg
new file mode 100644
index 000000000..7959709fa
Binary files /dev/null and b/test/models/IRR/assets/skybox/default_skyboxup.jpg differ
diff --git a/test/models/IRR/spider.mtl b/test/models/IRR/assets/spider.mtl
similarity index 100%
rename from test/models/IRR/spider.mtl
rename to test/models/IRR/assets/spider.mtl
diff --git a/test/models/IRR/wal67ar_small.jpg b/test/models/IRR/assets/wal67ar_small.jpg
similarity index 100%
rename from test/models/IRR/wal67ar_small.jpg
rename to test/models/IRR/assets/wal67ar_small.jpg
diff --git a/test/models/IRR/wal69ar_small.jpg b/test/models/IRR/assets/wal69ar_small.jpg
similarity index 100%
rename from test/models/IRR/wal69ar_small.jpg
rename to test/models/IRR/assets/wal69ar_small.jpg
diff --git a/test/models/IRR/box.irr b/test/models/IRR/box.irr
index 8a094ded6..2af68ab44 100644
--- a/test/models/IRR/box.irr
+++ b/test/models/IRR/box.irr
@@ -32,7 +32,7 @@
-
+
diff --git a/test/models/IRR/box_UTF16LE.irr b/test/models/IRR/box_UTF16LE.irr
index efc165d93..655517195 100644
Binary files a/test/models/IRR/box_UTF16LE.irr and b/test/models/IRR/box_UTF16LE.irr differ
diff --git a/test/models/IRR/cellar.irrmesh b/test/models/IRR/cellar.irrmesh
index 0278c9239..ee787463a 100644
--- a/test/models/IRR/cellar.irrmesh
+++ b/test/models/IRR/cellar.irrmesh
@@ -13,8 +13,8 @@
-
-
+
+
@@ -870,8 +870,8 @@
-
-
+
+
diff --git a/test/models/IRR/dawfInCellar_ChildOfCellar.irr b/test/models/IRR/dawfInCellar_ChildOfCellar.irr
index b9fa20c6a..0b57fc158 100644
--- a/test/models/IRR/dawfInCellar_ChildOfCellar.irr
+++ b/test/models/IRR/dawfInCellar_ChildOfCellar.irr
@@ -33,8 +33,8 @@
-
-
+
+
@@ -71,8 +71,8 @@
-
-
+
+
@@ -113,7 +113,7 @@
-
+
@@ -127,7 +127,7 @@
-
+
@@ -165,7 +165,7 @@
-
+
diff --git a/test/models/IRR/dawfInCellar_ChildOfCellar_UTF16LE.irr b/test/models/IRR/dawfInCellar_ChildOfCellar_UTF16LE.irr
index aba42e94d..cd7ba9752 100644
Binary files a/test/models/IRR/dawfInCellar_ChildOfCellar_UTF16LE.irr and b/test/models/IRR/dawfInCellar_ChildOfCellar_UTF16LE.irr differ
diff --git a/test/models/IRR/dawfInCellar_SameHierarchy.irr b/test/models/IRR/dawfInCellar_SameHierarchy.irr
index 424b42df8..5f6d01fe5 100644
--- a/test/models/IRR/dawfInCellar_SameHierarchy.irr
+++ b/test/models/IRR/dawfInCellar_SameHierarchy.irr
@@ -33,8 +33,8 @@
-
-
+
+
@@ -71,8 +71,8 @@
-
-
+
+
@@ -115,7 +115,7 @@
-
+
@@ -129,7 +129,7 @@
-
+
@@ -167,7 +167,7 @@
-
+
diff --git a/test/models/IRR/dawfInCellar_SameHierarchy_UTF16LE.irr b/test/models/IRR/dawfInCellar_SameHierarchy_UTF16LE.irr
index a4e7cc951..5cc3dda87 100644
Binary files a/test/models/IRR/dawfInCellar_SameHierarchy_UTF16LE.irr and b/test/models/IRR/dawfInCellar_SameHierarchy_UTF16LE.irr differ
diff --git a/test/models/IRR/instancing.irr b/test/models/IRR/instancing.irr
index ba0e710da..18b86f6e7 100644
--- a/test/models/IRR/instancing.irr
+++ b/test/models/IRR/instancing.irr
@@ -33,7 +33,7 @@
-
+
@@ -71,7 +71,7 @@
-
+
@@ -153,7 +153,7 @@
-
+
@@ -167,7 +167,7 @@
-
+
@@ -205,7 +205,7 @@
-
+
@@ -287,7 +287,7 @@
-
+
@@ -301,7 +301,7 @@
-
+
@@ -339,7 +339,7 @@
-
+
@@ -421,7 +421,7 @@
-
+
@@ -435,7 +435,7 @@
-
+
@@ -473,7 +473,7 @@
-
+
@@ -555,7 +555,7 @@
-
+
@@ -569,7 +569,7 @@
-
+
@@ -607,7 +607,7 @@
-
+
@@ -689,7 +689,7 @@
-
+
@@ -703,7 +703,7 @@
-
+
@@ -741,7 +741,7 @@
-
+
diff --git a/test/models/IRR/scenegraphAnim.irr b/test/models/IRR/scenegraphAnim.irr
index 2300ea18f..dedc1c2cf 100644
--- a/test/models/IRR/scenegraphAnim.irr
+++ b/test/models/IRR/scenegraphAnim.irr
@@ -126,7 +126,7 @@
-
+
@@ -197,7 +197,7 @@
-
+
@@ -213,7 +213,7 @@
-
+
@@ -251,7 +251,7 @@
-
+
@@ -347,8 +347,8 @@
-
-
+
+
@@ -385,8 +385,8 @@
-
-
+
+
@@ -442,7 +442,7 @@
-
+
@@ -512,7 +512,7 @@
-
+
diff --git a/test/models/IRR/scenegraphAnimMod.irr b/test/models/IRR/scenegraphAnimMod.irr
index 21408b245..9f82efcb0 100644
--- a/test/models/IRR/scenegraphAnimMod.irr
+++ b/test/models/IRR/scenegraphAnimMod.irr
@@ -126,7 +126,7 @@
-
+
@@ -197,7 +197,7 @@
-
+
@@ -213,7 +213,7 @@
-
+
@@ -251,7 +251,7 @@
-
+
@@ -347,8 +347,8 @@
-
-
+
+
@@ -385,8 +385,8 @@
-
-
+
+
@@ -442,7 +442,7 @@
-
+
@@ -512,7 +512,7 @@
-
+
diff --git a/test/models/IRR/scenegraphAnimMod_UTF16LE.irr b/test/models/IRR/scenegraphAnimMod_UTF16LE.irr
index 7384ae29a..a8cab1a12 100644
Binary files a/test/models/IRR/scenegraphAnimMod_UTF16LE.irr and b/test/models/IRR/scenegraphAnimMod_UTF16LE.irr differ
diff --git a/test/models/IRR/scenegraphAnim_UTF16LE.irr b/test/models/IRR/scenegraphAnim_UTF16LE.irr
index f6794351f..4b6a2a6f7 100644
Binary files a/test/models/IRR/scenegraphAnim_UTF16LE.irr and b/test/models/IRR/scenegraphAnim_UTF16LE.irr differ
diff --git a/test/models/IRR/sphere.irr b/test/models/IRR/sphere.irr
index 1e548fee5..1b1896e2a 100644
--- a/test/models/IRR/sphere.irr
+++ b/test/models/IRR/sphere.irr
@@ -34,7 +34,7 @@
-
+
diff --git a/test/models/IRR/sphere_UTF16LE.irr b/test/models/IRR/sphere_UTF16LE.irr
index d0f99a018..7974a4c70 100644
Binary files a/test/models/IRR/sphere_UTF16LE.irr and b/test/models/IRR/sphere_UTF16LE.irr differ
diff --git a/test/models/IRRMesh/1.png b/test/models/IRRMesh/assets/1.png
similarity index 100%
rename from test/models/IRRMesh/1.png
rename to test/models/IRRMesh/assets/1.png
diff --git a/test/models/IRRMesh/SpiderTex.jpg b/test/models/IRRMesh/assets/SpiderTex.jpg
similarity index 100%
rename from test/models/IRRMesh/SpiderTex.jpg
rename to test/models/IRRMesh/assets/SpiderTex.jpg
diff --git a/test/models/IRRMesh/assets/UVTransformTestImg.png b/test/models/IRRMesh/assets/UVTransformTestImg.png
new file mode 100644
index 000000000..b8f6f54f1
Binary files /dev/null and b/test/models/IRRMesh/assets/UVTransformTestImg.png differ
diff --git a/test/models/IRRMesh/assets/UVTransform_OffsetUV0.5-mirrorUV.png b/test/models/IRRMesh/assets/UVTransform_OffsetUV0.5-mirrorUV.png
new file mode 100644
index 000000000..447d30c32
Binary files /dev/null and b/test/models/IRRMesh/assets/UVTransform_OffsetUV0.5-mirrorUV.png differ
diff --git a/test/models/IRRMesh/assets/UVTransform_ScaleUV1-2_OffsetUV0-0.9_Rotate-72.png b/test/models/IRRMesh/assets/UVTransform_ScaleUV1-2_OffsetUV0-0.9_Rotate-72.png
new file mode 100644
index 000000000..4645a5668
Binary files /dev/null and b/test/models/IRRMesh/assets/UVTransform_ScaleUV1-2_OffsetUV0-0.9_Rotate-72.png differ
diff --git a/test/models/IRRMesh/assets/UVTransform_ScaleUV1-2_OffsetUV0-0.9_Rotate-72_mirrorU.png b/test/models/IRRMesh/assets/UVTransform_ScaleUV1-2_OffsetUV0-0.9_Rotate-72_mirrorU.png
new file mode 100644
index 000000000..9fdc6daab
Binary files /dev/null and b/test/models/IRRMesh/assets/UVTransform_ScaleUV1-2_OffsetUV0-0.9_Rotate-72_mirrorU.png differ
diff --git a/test/models/IRRMesh/assets/UVTransform_ScaleUV2x_Rotate45.png b/test/models/IRRMesh/assets/UVTransform_ScaleUV2x_Rotate45.png
new file mode 100644
index 000000000..ac15908c3
Binary files /dev/null and b/test/models/IRRMesh/assets/UVTransform_ScaleUV2x_Rotate45.png differ
diff --git a/test/models/IRRMesh/brownground_1-1.jpg b/test/models/IRRMesh/assets/brownground_1-1.jpg
similarity index 100%
rename from test/models/IRRMesh/brownground_1-1.jpg
rename to test/models/IRRMesh/assets/brownground_1-1.jpg
diff --git a/test/models/IRRMesh/crackedground_1-6.jpg b/test/models/IRRMesh/assets/crackedground_1-6.jpg
similarity index 100%
rename from test/models/IRRMesh/crackedground_1-6.jpg
rename to test/models/IRRMesh/assets/crackedground_1-6.jpg
diff --git a/test/models/IRRMesh/drkwood2.jpg b/test/models/IRRMesh/assets/drkwood2.jpg
similarity index 100%
rename from test/models/IRRMesh/drkwood2.jpg
rename to test/models/IRRMesh/assets/drkwood2.jpg
diff --git a/test/models/IRRMesh/engineflare1.jpg b/test/models/IRRMesh/assets/engineflare1.jpg
similarity index 100%
rename from test/models/IRRMesh/engineflare1.jpg
rename to test/models/IRRMesh/assets/engineflare1.jpg
diff --git a/test/models/IRRMesh/wal67ar_small.jpg b/test/models/IRRMesh/assets/wal67ar_small.jpg
similarity index 100%
rename from test/models/IRRMesh/wal67ar_small.jpg
rename to test/models/IRRMesh/assets/wal67ar_small.jpg
diff --git a/test/models/IRRMesh/wal69ar_small.jpg b/test/models/IRRMesh/assets/wal69ar_small.jpg
similarity index 100%
rename from test/models/IRRMesh/wal69ar_small.jpg
rename to test/models/IRRMesh/assets/wal69ar_small.jpg
diff --git a/test/models/IRRMesh/cellar.irrmesh b/test/models/IRRMesh/cellar.irrmesh
index 0278c9239..ee787463a 100644
--- a/test/models/IRRMesh/cellar.irrmesh
+++ b/test/models/IRRMesh/cellar.irrmesh
@@ -13,8 +13,8 @@
-
-
+
+
@@ -870,8 +870,8 @@
-
-
+
+
diff --git a/test/models/IRRMesh/cellar_UTF16LE.irrmesh b/test/models/IRRMesh/cellar_UTF16LE.irrmesh
index d8d3a661b..38ef1847c 100644
Binary files a/test/models/IRRMesh/cellar_UTF16LE.irrmesh and b/test/models/IRRMesh/cellar_UTF16LE.irrmesh differ
diff --git a/test/models/IRRMesh/spider.irrmesh b/test/models/IRRMesh/spider.irrmesh
index e446a9ec2..e94901156 100644
--- a/test/models/IRRMesh/spider.irrmesh
+++ b/test/models/IRRMesh/spider.irrmesh
@@ -13,7 +13,7 @@
-
+
@@ -354,7 +354,7 @@
-
+
@@ -485,7 +485,7 @@
-
+
@@ -1609,7 +1609,7 @@
-
+
diff --git a/test/models/IRRMesh/spider_UTF16LE.irrmesh b/test/models/IRRMesh/spider_UTF16LE.irrmesh
index 25fda7c27..4a3509d5b 100644
Binary files a/test/models/IRRMesh/spider_UTF16LE.irrmesh and b/test/models/IRRMesh/spider_UTF16LE.irrmesh differ
diff --git a/test/models/IRRMesh/testFormatDetection.xml b/test/models/IRRMesh/testFormatDetection.xml
index 0986eaf61..fd2e34f65 100644
--- a/test/models/IRRMesh/testFormatDetection.xml
+++ b/test/models/IRRMesh/testFormatDetection.xml
@@ -13,7 +13,7 @@
-
+
@@ -96,7 +96,7 @@
-
+
@@ -179,7 +179,7 @@
-
+
@@ -262,7 +262,7 @@
-
+
@@ -345,7 +345,7 @@
-
+
diff --git a/test/models/IRRMesh/testFormatDetection_UTF16LE.xml b/test/models/IRRMesh/testFormatDetection_UTF16LE.xml
index aa73560d4..64891be9f 100644
Binary files a/test/models/IRRMesh/testFormatDetection_UTF16LE.xml and b/test/models/IRRMesh/testFormatDetection_UTF16LE.xml differ