From 2ae20c3ff77f49c960df415c9c87930f74a7104d Mon Sep 17 00:00:00 2001 From: aramis_acg Date: Wed, 21 Jan 2009 14:28:32 +0000 Subject: [PATCH] Added another x test model - fails to load due to RGBA vertex colors. Source is kwxport, MIT license, I think that's ok. git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@316 67173fc5-114c-0410-ac8e-9d2fd5bffc1f --- test/models/X/bottom.tga | Bin 0 -> 196652 bytes .../X/cube_withRGBAVertexColor.source.txt | 16 + test/models/X/cube_withRGBAVertexColor.x | 505 ++++++++++++++++++ test/models/X/top.tga | Bin 0 -> 196652 bytes test/models/X/updown.tga | Bin 0 -> 196652 bytes 5 files changed, 521 insertions(+) create mode 100644 test/models/X/bottom.tga create mode 100644 test/models/X/cube_withRGBAVertexColor.source.txt create mode 100644 test/models/X/cube_withRGBAVertexColor.x create mode 100644 test/models/X/top.tga create mode 100644 test/models/X/updown.tga diff --git a/test/models/X/bottom.tga b/test/models/X/bottom.tga new file mode 100644 index 0000000000000000000000000000000000000000..4d6fd56e67cdfd366a51c4f7147f9b1ffb25ac26 GIT binary patch literal 196652 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 literal 0 HcmV?d00001 diff --git a/test/models/X/cube_withRGBAVertexColor.source.txt b/test/models/X/cube_withRGBAVertexColor.source.txt new file mode 100644 index 000000000..d173f5a47 --- /dev/null +++ b/test/models/X/cube_withRGBAVertexColor.source.txt @@ -0,0 +1,16 @@ +From kwxport +http://www.kwxport.org/ + +>> +The kW Xport plug-in source is released under the MIT license. +Basically, it means "feel free to use it; credit the source; don't sue me +if something goes wrong." +>> + +MIT License + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/test/models/X/cube_withRGBAVertexColor.x b/test/models/X/cube_withRGBAVertexColor.x new file mode 100644 index 000000000..2344f1ddd --- /dev/null +++ b/test/models/X/cube_withRGBAVertexColor.x @@ -0,0 +1,505 @@ +xof 0303txt 0032 +template KeyValuePair { + <26e6b1c3-3d4d-4a1d-a437-b33668ffa1c2> + STRING key; + STRING value; +} + +template Frame { + <3d82ab46-62da-11cf-ab39-0020af71e433> + [...] +} + +template Matrix4x4 { + + array FLOAT matrix[16]; +} + +template FrameTransformMatrix { + + Matrix4x4 frameMatrix; +} + +template ObjectMatrixComment { + <95a48e28-7ef4-4419-a16a-ba9dbdf0d2bc> + Matrix4x4 objectMatrix; +} + +template Vector { + <3d82ab5e-62da-11cf-ab39-0020af71e433> + FLOAT x; + FLOAT y; + FLOAT z; +} + +template MeshFace { + <3d82ab5f-62da-11cf-ab39-0020af71e433> + DWORD nFaceVertexIndices; + array DWORD faceVertexIndices[nFaceVertexIndices]; +} + +template Mesh { + <3d82ab44-62da-11cf-ab39-0020af71e433> + DWORD nVertices; + array Vector vertices[nVertices]; + DWORD nFaces; + array MeshFace faces[nFaces]; + [...] +} + +template MeshNormals { + + DWORD nNormals; + array Vector normals[nNormals]; + DWORD nFaceNormals; + array MeshFace faceNormals[nFaceNormals]; +} + +template Coords2d { + + FLOAT u; + FLOAT v; +} + +template MeshTextureCoords { + + DWORD nTextureCoords; + array Coords2d textureCoords[nTextureCoords]; +} + +template ColorRGBA { + <35ff44e0-6c7c-11cf-8f52-0040333594a3> + FLOAT red; + FLOAT green; + FLOAT blue; + FLOAT alpha; +} + +template IndexedColor { + <1630b820-7842-11cf-8f52-0040333594a3> + DWORD index; + ColorRGBA indexColor; +} + +template MeshVertexColors { + <1630b821-7842-11cf-8f52-0040333594a3> + DWORD nVertexColors; + array IndexedColor vertexColors[nVertexColors]; +} + +template VertexElement { + + DWORD Type; + DWORD Method; + DWORD Usage; + DWORD UsageIndex; +} + +template DeclData { + + DWORD nElements; + array VertexElement Elements[nElements]; + DWORD nDWords; + array DWORD data[nDWords]; +} + +template ColorRGB { + + FLOAT red; + FLOAT green; + FLOAT blue; +} + +template Material { + <3d82ab4d-62da-11cf-ab39-0020af71e433> + ColorRGBA faceColor; + FLOAT power; + ColorRGB specularColor; + ColorRGB emissiveColor; + [...] +} + +template MeshMaterialList { + + DWORD nMaterials; + DWORD nFaceIndexes; + array DWORD faceIndexes[nFaceIndexes]; + [Material <3d82ab4d-62da-11cf-ab39-0020af71e433>] +} + +template TextureFilename { + + STRING filename; +} + + +KeyValuePair { + "Date"; + "2008-05-15 15:37:55"; +} + +KeyValuePair { + "File"; + "c:\\code\\sourceforge\\kwxport\\trunkMerged\\test\\data\\cube.max"; +} + +KeyValuePair { + "User"; + "JWatte"; +} + +KeyValuePair { + "CoreTime"; + "0"; +} + +Frame Box01 { + + + FrameTransformMatrix relative { + 1.000000,0.000000,0.000000,0.000000,0.000000,1.000000,0.000000,0.000000,0.000000,0.000000,1.000000,0.000000,0.000000,-0.492126,0.000000,1.000000;; + } + + ObjectMatrixComment object { + 1.000000,0.000000,0.000000,0.000000,0.000000,1.000000,0.000000,0.000000,0.000000,0.000000,1.000000,0.000000,0.000000,0.000000,0.000000,1.000000;; + } + + Mesh mesh_Box01 { + 24; + -0.492126;0.000000;-0.492126;, + -0.492126;0.000000;0.492126;, + 0.492126;0.000000;0.492126;, + 0.492126;0.000000;-0.492126;, + -0.492126;0.984252;-0.492126;, + 0.492126;0.984252;-0.492126;, + 0.492126;0.984252;0.492126;, + -0.492126;0.984252;0.492126;, + -0.492126;0.000000;-0.492126;, + 0.492126;0.000000;-0.492126;, + 0.492126;0.984252;-0.492126;, + -0.492126;0.984252;-0.492126;, + 0.492126;0.000000;-0.492126;, + 0.492126;0.000000;0.492126;, + 0.492126;0.984252;0.492126;, + 0.492126;0.984252;-0.492126;, + 0.492126;0.000000;0.492126;, + -0.492126;0.000000;0.492126;, + -0.492126;0.984252;0.492126;, + 0.492126;0.984252;0.492126;, + -0.492126;0.000000;0.492126;, + -0.492126;0.000000;-0.492126;, + -0.492126;0.984252;-0.492126;, + -0.492126;0.984252;0.492126;; + 12; + 3;0,2,1;, + 3;2,0,3;, + 3;4,6,5;, + 3;6,4,7;, + 3;8,10,9;, + 3;10,8,11;, + 3;12,14,13;, + 3;14,12,15;, + 3;16,18,17;, + 3;18,16,19;, + 3;20,22,21;, + 3;22,20,23;; + + MeshNormals normals { + 24; + 0.000000;-1.000000;0.000000;, + 0.000000;-1.000000;0.000000;, + 0.000000;-1.000000;0.000000;, + 0.000000;-1.000000;0.000000;, + 0.000000;1.000000;0.000000;, + 0.000000;1.000000;0.000000;, + 0.000000;1.000000;0.000000;, + 0.000000;1.000000;0.000000;, + 0.000000;0.000000;-1.000000;, + 0.000000;0.000000;-1.000000;, + 0.000000;0.000000;-1.000000;, + 0.000000;0.000000;-1.000000;, + 1.000000;0.000000;0.000000;, + 1.000000;0.000000;0.000000;, + 1.000000;0.000000;0.000000;, + 1.000000;0.000000;0.000000;, + 0.000000;0.000000;1.000000;, + 0.000000;0.000000;1.000000;, + 0.000000;0.000000;1.000000;, + 0.000000;0.000000;1.000000;, + -1.000000;0.000000;0.000000;, + -1.000000;0.000000;0.000000;, + -1.000000;0.000000;0.000000;, + -1.000000;0.000000;0.000000;; + 12; + 3;0,2,1;, + 3;2,0,3;, + 3;4,6,5;, + 3;6,4,7;, + 3;8,10,9;, + 3;10,8,11;, + 3;12,14,13;, + 3;14,12,15;, + 3;16,18,17;, + 3;18,16,19;, + 3;20,22,21;, + 3;22,20,23;; + } + + MeshTextureCoords tc0 { + 24; + -0.000000;-0.000000;, + -0.000000;1.000000;, + 1.000000;1.000000;, + 1.000000;0.000000;, + 0.000000;1.000000;, + 1.000000;1.000000;, + 1.000000;0.000000;, + 0.000000;0.000000;, + 0.000000;1.000000;, + 1.000000;1.000000;, + 1.000000;0.000000;, + 0.000000;0.000000;, + 0.000000;1.000000;, + 1.000000;1.000000;, + 1.000000;0.000000;, + 0.000000;0.000000;, + 0.000000;1.000000;, + 1.000000;1.000000;, + 1.000000;0.000000;, + 0.000000;0.000000;, + 0.000000;1.000000;, + 1.000000;1.000000;, + 1.000000;0.000000;, + 0.000000;0.000000;; + } + + MeshVertexColors col0 { + 24; + 0;1.000000;0.000000;0.000000;1.000000;;, + 1;1.000000;1.000000;1.000000;1.000000;;, + 2;1.000000;1.000000;1.000000;1.000000;;, + 3;1.000000;0.000000;0.000000;1.000000;;, + 4;1.000000;1.000000;1.000000;1.000000;;, + 5;1.000000;1.000000;1.000000;1.000000;;, + 6;0.000000;1.000000;0.000000;1.000000;;, + 7;0.000000;1.000000;0.000000;1.000000;;, + 8;1.000000;0.000000;0.000000;1.000000;;, + 9;1.000000;0.000000;0.000000;1.000000;;, + 10;1.000000;1.000000;1.000000;1.000000;;, + 11;1.000000;1.000000;1.000000;1.000000;;, + 12;1.000000;0.000000;0.000000;1.000000;;, + 13;1.000000;1.000000;1.000000;1.000000;;, + 14;0.000000;1.000000;0.000000;1.000000;;, + 15;1.000000;1.000000;1.000000;1.000000;;, + 16;1.000000;1.000000;1.000000;1.000000;;, + 17;1.000000;1.000000;1.000000;1.000000;;, + 18;0.000000;1.000000;0.000000;1.000000;;, + 19;0.000000;1.000000;0.000000;1.000000;;, + 20;1.000000;1.000000;1.000000;1.000000;;, + 21;1.000000;0.000000;0.000000;1.000000;;, + 22;1.000000;1.000000;1.000000;1.000000;;, + 23;0.000000;1.000000;0.000000;1.000000;;; + } + + DeclData { + 2; + 2;0;7;0;, + 2;0;6;0;; + 144; + 3031830834, + 0, + 3212836864, + 1065353216, + 0, + 3031830834, + 0, + 1065353216, + 0, + 1065353216, + 0, + 0, + 0, + 1065353216, + 0, + 0, + 0, + 3212836864, + 3033535400, + 0, + 3212836864, + 1065353216, + 0, + 3033535400, + 0, + 1065353216, + 0, + 1065353216, + 0, + 0, + 0, + 1065353216, + 0, + 0, + 0, + 1065353216, + 3030126269, + 0, + 3212836864, + 1065353216, + 0, + 3030126269, + 0, + 1065353216, + 0, + 3212836864, + 0, + 0, + 0, + 1065353216, + 0, + 0, + 0, + 3212836864, + 3031830834, + 0, + 3212836864, + 1065353216, + 0, + 3031830834, + 0, + 1065353216, + 0, + 0, + 0, + 1065353216, + 0, + 1065353216, + 0, + 3212836864, + 0, + 0, + 0, + 0, + 1065353216, + 1065353216, + 0, + 0, + 0, + 1065353216, + 0, + 1065353216, + 0, + 0, + 0, + 1065353216, + 0, + 0, + 0, + 3212836864, + 0, + 0, + 1065353216, + 1065353216, + 0, + 0, + 0, + 1065353216, + 0, + 1065353216, + 0, + 0, + 0, + 1065353216, + 0, + 0, + 0, + 1065353216, + 0, + 0, + 1065353216, + 1065353216, + 0, + 0, + 0, + 1065353216, + 0, + 3212836864, + 0, + 0, + 0, + 1065353216, + 0, + 0, + 0, + 3212836864, + 0, + 0, + 1065353216, + 1065353216, + 0, + 0, + 0, + 1065353216, + 0, + 0, + 0, + 1065353216, + 0, + 1065353216, + 0, + 3212836864, + 0, + 0; + } + + MeshMaterialList mtls { + 3; + 12; + 0, + 0, + 1, + 1, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2; + + Material bottom { + 0.588000;0.588000;0.588000;1.000000;; + 31.000000; + 0.380000;0.380000;0.380000;; + 0.000000;0.000000;0.000000;; + + TextureFilename Diffuse { + "C:\\code\\sourceforge\\kwxport\\trunkMerged\\test\\data\\bottom.tga"; + } + } + + Material top { + 0.588235;0.588235;0.588235;1.000000;; + 52.999996; + 0.780000;0.780000;0.780000;; + 0.000000;0.000000;0.000000;; + + TextureFilename Diffuse { + "C:\\code\\sourceforge\\kwxport\\trunkMerged\\test\\data\\top.tga"; + } + } + + Material side { + 0.588000;0.588000;0.588000;1.000000;; + 57.000000; + 0.700000;0.700000;0.700000;; + 0.000000;0.000000;0.000000;; + + TextureFilename Diffuse { + "C:\\code\\sourceforge\\kwxport\\trunkMerged\\test\\data\\updown.tga"; + } + } + } + } +} \ No newline at end of file diff --git a/test/models/X/top.tga b/test/models/X/top.tga new file mode 100644 index 0000000000000000000000000000000000000000..16691cd1d14e2ed35ce680c8e89e497dca649327 GIT binary patch literal 196652 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 literal 0 HcmV?d00001 diff --git a/test/models/X/updown.tga b/test/models/X/updown.tga new file mode 100644 index 0000000000000000000000000000000000000000..effa9f0d394187e9c4e941457b5885ba639e8370 GIT binary patch literal 196652 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