diff --git a/test/models/XGL/BCN_Epileptic.zgl b/test/models/XGL/BCN_Epileptic.zgl
new file mode 100644
index 000000000..b17dc6e5f
Binary files /dev/null and b/test/models/XGL/BCN_Epileptic.zgl differ
diff --git a/test/models/XGL/Spider_ascii.zgl b/test/models/XGL/Spider_ascii.zgl
new file mode 100644
index 000000000..3816eae87
Binary files /dev/null and b/test/models/XGL/Spider_ascii.zgl differ
diff --git a/test/models/XGL/Wuson.zgl b/test/models/XGL/Wuson.zgl
new file mode 100644
index 000000000..3142acf34
Binary files /dev/null and b/test/models/XGL/Wuson.zgl differ
diff --git a/test/models/XGL/cubes_with_alpha.zgl b/test/models/XGL/cubes_with_alpha.zgl
new file mode 100644
index 000000000..cd6cd82ae
Binary files /dev/null and b/test/models/XGL/cubes_with_alpha.zgl differ
diff --git a/test/models/XGL/sample_official.xgl b/test/models/XGL/sample_official.xgl
new file mode 100644
index 000000000..d6d044e5c
--- /dev/null
+++ b/test/models/XGL/sample_official.xgl
@@ -0,0 +1,149 @@
+
+
+
+1.0,1.0,1.0
+
+
+
+
+1.000,1.000,1.000
+0.100,0.100,0.100
+0.302,-0.302,-0.905
+
+0.000,0.000,0.000
+
+
+
+
+0.000,1.000,0.000
+0.000,1.000,0.000
+1.000,1.000,1.000
+0.000,0.000,0.000
+64.0
+1.000
+
+
+-1.0,-0.5,0.0
+-1.0,-0.5,1.0
+-1.0,0.5,0.0
+-1.0,0.5,1.0
+0.0,-0.5,0.0
+0.0,-0.5,1.0
+0.0,0.5,0.0
+0.0,0.5,1.0
+
+-1.0,0.0,0.0
+0.0,-1.0,0.0
+1.0,0.0,0.0
+0.0,1.0,0.0
+0.0,0.0,1.0
+0.0,0.0,-1.0
+
+
+0
+00
+10
+20
+
+
+
+0
+20
+10
+30
+
+
+
+0
+41
+51
+01
+
+
+
+0
+01
+51
+11
+
+
+
+0
+62
+72
+42
+
+
+
+0
+42
+72
+52
+
+
+
+0
+23
+33
+63
+
+
+
+0
+63
+33
+73
+
+
+
+0
+54
+74
+14
+
+
+
+0
+14
+74
+34
+
+
+
+0
+25
+65
+05
+
+
+
+0
+05
+65
+45
+
+
+
+
+
+
+
+
+
+
diff --git a/test/models/XGL/sample_official_asxml.xml b/test/models/XGL/sample_official_asxml.xml
new file mode 100644
index 000000000..d6d044e5c
--- /dev/null
+++ b/test/models/XGL/sample_official_asxml.xml
@@ -0,0 +1,149 @@
+
+
+
+1.0,1.0,1.0
+
+
+
+
+1.000,1.000,1.000
+0.100,0.100,0.100
+0.302,-0.302,-0.905
+
+0.000,0.000,0.000
+
+
+
+
+0.000,1.000,0.000
+0.000,1.000,0.000
+1.000,1.000,1.000
+0.000,0.000,0.000
+64.0
+1.000
+
+
+-1.0,-0.5,0.0
+-1.0,-0.5,1.0
+-1.0,0.5,0.0
+-1.0,0.5,1.0
+0.0,-0.5,0.0
+0.0,-0.5,1.0
+0.0,0.5,0.0
+0.0,0.5,1.0
+
+-1.0,0.0,0.0
+0.0,-1.0,0.0
+1.0,0.0,0.0
+0.0,1.0,0.0
+0.0,0.0,1.0
+0.0,0.0,-1.0
+
+
+0
+00
+10
+20
+
+
+
+0
+20
+10
+30
+
+
+
+0
+41
+51
+01
+
+
+
+0
+01
+51
+11
+
+
+
+0
+62
+72
+42
+
+
+
+0
+42
+72
+52
+
+
+
+0
+23
+33
+63
+
+
+
+0
+63
+33
+73
+
+
+
+0
+54
+74
+14
+
+
+
+0
+14
+74
+34
+
+
+
+0
+25
+65
+05
+
+
+
+0
+05
+65
+45
+
+
+
+
+
+
+
+
+
+
diff --git a/test/models/XGL/sphere_with_mat_gloss_10pc.zgl b/test/models/XGL/sphere_with_mat_gloss_10pc.zgl
new file mode 100644
index 000000000..3e0affb7d
Binary files /dev/null and b/test/models/XGL/sphere_with_mat_gloss_10pc.zgl differ
diff --git a/test/models/XGL/wuson_dxf.zgl b/test/models/XGL/wuson_dxf.zgl
new file mode 100644
index 000000000..870d946ef
Binary files /dev/null and b/test/models/XGL/wuson_dxf.zgl differ