public void can_read_simple_piev2() { var data = @"PIE 2 TYPE 10200 TEXTURE 0 page-17-droid-weapons.png 256 255 LEVELS 1 LEVEL 1 POINTS 13 14 3 0 7 3 12 7 37 12 14 37 0 -6 3 12 -6 37 12 -13 3 0 -13 37 0 -6 3 -12 -6 37 -12 7 3 -12 7 37 -12 0 37 0 POLYGONS 36 200 3 0 1 2 10 192 12 192 12 177 200 3 0 2 3 10 192 12 177 10 177 200 3 3 2 1 10 177 12 177 12 192 200 3 3 1 0 10 177 12 192 10 192 200 3 1 4 5 0 192 1 192 1 177 200 3 1 5 2 0 192 1 177 0 177 200 3 2 5 4 0 177 1 177 1 192 200 3 2 4 1 0 177 1 192 0 192 200 3 4 6 7 1 192 3 192 3 177 200 3 4 7 5 1 192 3 177 1 177 200 3 5 7 6 1 177 3 177 3 192 200 3 5 6 4 1 177 3 192 1 192 200 3 6 8 9 3 192 5 192 5 177 200 3 6 9 7 3 192 5 177 3 177 200 3 7 9 8 3 177 5 177 5 192 200 3 7 8 6 3 177 5 192 3 192 200 3 8 10 11 5 192 8 192 8 177 200 3 8 11 9 5 192 8 177 5 177 200 3 9 11 10 5 177 8 177 8 192 200 3 9 10 8 5 177 8 192 5 192 200 3 10 0 3 8 192 10 192 10 177 200 3 10 3 11 8 192 10 177 8 177 200 3 11 3 0 8 177 10 177 10 192 200 3 11 0 10 8 177 10 192 8 192 200 3 12 11 3 23 185 26 192 29 185 200 3 12 3 2 23 185 29 185 26 178 200 3 2 3 11 26 178 29 185 26 192 200 3 2 11 12 26 178 26 192 23 185 200 3 12 2 5 23 185 26 178 19 178 200 3 12 5 7 23 185 19 178 16 185 200 3 7 5 2 16 185 19 178 26 178 200 3 7 2 12 16 185 26 178 23 185 200 3 12 7 9 23 185 16 185 19 192 200 3 12 9 11 23 185 19 192 26 192 200 3 11 9 7 26 192 19 192 16 185 200 3 11 7 12 26 192 16 185 23 185"; var pie = PieGrammar.Pie.Parse(data); var validator = new PieValidator(); validator.Validate(pie).IsValid.Should().BeTrue(); pie.Version.Should().Be( 2 ); pie.Type.Should().Be(10200); pie.Texture.Path.Should().Be("page-17-droid-weapons.png"); pie.Texture.Height.Should().Be( 255 ); pie.Texture.Width.Should().Be( 256 ); pie.Levels.Length.Should().Be(1); pie.Levels[0].Points.Length.Should().Be( 13 ); pie.Levels[0].Polygons.Length.Should().Be( 36 ); pie.Levels[0].Points[12].X.Should().Be( 0 ); pie.Levels[0].Points[12].Y.Should().Be( 37 ); pie.Levels[0].Points[12].Z.Should().Be( 0 ); pie.Levels[0].Polygons[35].Flags.Should().Be( PolygonFlags.Texture ); pie.Levels[0].Polygons[35].PointCount.Should().Be(3 ); pie.Levels[0].Polygons[35].P1.Should().Be( 11 ); pie.Levels[0].Polygons[35].P2.Should().Be( 7 ); pie.Levels[0].Polygons[35].P3.Should().Be( 12 ); //TODO more thorough testing here pie.Levels[0].Polygons[35].TexCoords[2].U.Should().Be( 23 ); pie.Levels[0].Polygons[35].TexCoords[2].V.Should().Be( 185 ); }
public void can_read_piev2_with_multi_level() { var data = @"PIE 2 TYPE 10200 TEXTURE 0 page-11-player-buildings.png 254 256 LEVELS 3 LEVEL 1 POINTS 56 -52 7 22 51 7 22 51 7 -21 -52 7 -21 51 0 -21 -52 0 -21 51 0 22 -52 0 22 -15 30 7 43 30 7 43 30 -6 -15 30 -6 48 7 -8 -20 7 -8 48 7 9 -20 7 9 -57 0 -39 57 0 -39 57 26 -39 -57 26 -39 57 0 39 57 26 39 -57 0 39 -57 26 39 17 77 12 17 82 12 -45 8 20 -42 7 20 -45 8 18 17 82 7 17 77 7 -42 7 18 -24 5 -1 -27 5 -1 -27 71 -1 -24 71 -1 -24 5 1 -24 71 1 -27 5 1 -27 71 1 17 7 -20 17 80 -8 22 80 -8 22 8 -20 17 80 9 22 80 9 17 8 21 22 8 21 17 82 -7 17 82 -12 -45 8 -20 -45 8 -18 -42 5 -18 17 77 -7 17 77 -12 -42 7 -20 POLYGONS 66 200 3 0 1 2 253 64 253 120 218 120 200 3 0 2 3 253 64 218 120 218 64 200 3 3 2 4 223 64 223 120 218 120 200 3 3 4 5 223 64 218 120 218 64 200 3 2 1 6 218 116 253 116 253 120 200 3 2 6 4 218 116 253 120 218 120 200 3 1 0 7 253 64 253 120 249 120 200 3 1 7 6 253 64 249 120 249 64 200 3 0 3 5 218 64 253 64 253 69 200 3 0 5 7 218 64 253 69 218 69 200 3 8 9 10 252 35 252 1 241 1 200 3 8 10 11 252 35 241 1 241 35 200 3 11 10 12 247 60 221 60 221 50 200 3 11 12 13 247 60 221 50 247 50 200 3 10 9 14 255 49 247 49 247 62 200 3 10 14 12 255 49 247 62 255 62 200 3 9 8 15 247 60 221 60 221 50 200 3 9 15 14 247 60 221 50 247 50 200 3 8 11 13 252 35 241 35 241 49 200 3 8 13 15 252 35 241 49 252 49 200 3 16 17 18 64 47 116 47 116 36 200 3 16 18 19 64 47 116 36 64 36 200 3 19 18 17 64 36 116 36 116 47 200 3 19 17 16 64 36 116 47 64 47 200 3 17 20 21 89 47 116 47 116 36 200 3 17 21 18 89 47 116 36 89 36 200 3 18 21 20 89 36 116 36 116 47 200 3 18 20 17 89 36 116 47 89 47 200 3 20 22 23 64 47 116 47 116 36 200 3 20 23 21 64 47 116 36 64 36 200 3 21 23 22 64 36 116 36 116 47 200 3 21 22 20 64 36 116 47 64 47 200 3 22 16 19 89 47 116 47 116 36 200 3 22 19 23 89 47 116 36 89 36 200 3 23 19 16 89 36 116 36 116 47 200 3 23 16 22 89 36 116 47 89 47 200 3 24 25 26 255 49 253 49 253 0 200 3 24 26 27 255 49 253 0 255 0 200 3 28 29 30 253 49 253 0 255 0 200 3 28 30 31 253 49 255 0 255 49 200 3 29 28 26 253 0 253 49 255 49 200 3 29 26 25 253 0 255 49 255 0 200 3 32 33 34 96 55 98 55 99 121 200 3 32 34 35 96 55 99 121 97 121 200 3 36 32 35 94 54 98 54 97 121 200 3 36 35 37 94 54 97 121 93 121 200 3 38 36 37 92 55 96 55 96 118 200 3 38 37 39 92 55 96 118 92 118 200 3 33 38 39 94 55 98 55 98 121 200 3 33 39 34 94 55 98 121 94 121 200 3 40 41 42 240 1 240 48 235 48 200 3 40 42 43 240 1 235 48 235 1 200 3 41 44 45 226 2 226 4 217 4 200 3 41 45 42 226 2 217 4 217 2 200 3 44 46 47 240 1 240 48 235 48 200 3 44 47 45 240 1 235 48 235 1 200 3 43 42 45 210 48 217 1 227 1 200 3 43 45 47 210 48 227 1 234 49 200 3 44 41 40 216 1 227 1 234 48 200 3 44 40 46 216 1 234 48 210 48 200 3 48 49 50 253 0 255 0 255 49 200 3 48 50 51 253 0 255 49 253 49 200 3 51 52 53 255 49 253 49 253 0 200 3 51 53 48 255 49 253 0 255 0 200 3 54 55 50 255 49 255 0 253 0 200 3 54 50 49 255 49 253 0 253 49 LEVEL 2 POINTS 8 -32 73 0 -26 73 5 -20 73 0 -26 73 -5 -20 22 0 -26 22 -5 -26 22 5 -32 22 0 POLYGONS 10 200 3 0 1 2 46 200 34 211 22 200 200 3 0 2 3 46 200 22 200 34 189 200 3 3 2 4 240 49 234 49 234 1 200 3 3 4 5 240 49 234 1 240 1 200 3 2 1 6 240 49 234 49 234 1 200 3 2 6 4 240 49 234 1 240 1 200 3 1 0 7 240 48 234 48 234 1 200 3 1 7 6 240 48 234 1 240 1 200 3 0 3 5 240 49 234 49 234 1 200 3 0 5 7 240 49 234 1 240 1 LEVEL 3 POINTS 26 31 85 7 26 103 7 8 98 7 12 80 7 8 98 -6 26 103 -6 31 85 -6 12 80 -6 19 88 2 17 96 2 -61 75 2 -59 66 2 -61 75 -1 17 96 -1 19 88 -1 -59 66 -1 -60 95 -2 -67 90 -2 -67 90 3 -60 95 3 -68 64 -2 -68 64 3 -50 35 -2 -50 35 3 -44 39 -2 -44 39 3 POLYGONS 30 200 3 0 1 2 28 244 27 252 2 251 200 3 0 2 3 28 244 2 251 3 243 200 3 4 5 6 27 251 3 251 3 243 200 3 4 6 7 27 251 3 243 27 243 200 3 6 5 1 6 251 6 245 24 245 200 3 1 0 6 24 245 24 251 6 251 200 3 5 4 2 28 252 1 252 1 243 200 3 5 2 1 28 252 1 243 28 243 200 3 4 7 3 25 244 25 250 7 250 200 3 4 3 2 25 244 7 250 7 244 200 3 8 9 10 240 48 235 48 235 1 200 3 8 10 11 240 48 235 1 240 1 200 3 12 13 14 240 1 240 48 235 48 200 3 12 14 15 240 1 235 48 235 1 200 3 13 12 10 239 2 239 48 236 48 200 3 13 10 9 239 2 236 48 236 2 200 3 16 17 18 31 252 30 247 31 247 200 3 16 18 19 31 252 31 247 31 252 200 3 17 20 21 31 244 17 244 17 242 200 3 17 21 18 31 244 17 242 31 242 200 3 20 22 23 17 244 0 244 0 242 200 3 20 23 21 17 244 0 242 17 242 200 3 24 16 19 0 252 31 252 31 250 200 3 24 19 25 0 252 31 250 0 250 200 3 23 25 19 0 244 0 252 31 252 200 3 23 19 21 0 244 31 252 17 242 200 3 21 19 18 17 242 31 252 31 244 200 3 16 24 22 31 252 0 252 0 244 200 3 16 22 20 31 252 0 244 17 242 200 3 16 20 17 31 252 17 242 31 244 "; var pie = PieGrammar.Pie.Parse(data); var validator = new PieValidator(); validator.Validate(pie).IsValid.Should().BeTrue(); pie.Version.Should().Be(2); pie.Type.Should().Be(10200); pie.Texture.Path.Should().Be("page-11-player-buildings.png"); pie.Texture.Width.Should().Be(254); pie.Texture.Height.Should().Be(256); pie.Levels.Length.Should().Be(3); pie.Levels[0].Points.Length.Should().Be(56); pie.Levels[1].Points.Length.Should().Be(8); pie.Levels[2].Points.Length.Should().Be(26); pie.Levels[0].Points[0].X.Should().Be(-52); pie.Levels[1].Points[1].Y.Should().Be(73); pie.Levels[2].Points[2].Z.Should().Be(7); pie.Levels[2].Polygons[1].Flags.Should().Be(PolygonFlags.Texture); pie.Levels[2].Polygons[1].PointCount.Should().Be(3); pie.Levels[2].Polygons[1].P1.Should().Be(0); pie.Levels[2].Polygons[1].P2.Should().Be(2); pie.Levels[2].Polygons[1].P3.Should().Be(3); //TODO more thorough testing here pie.Levels[2].Polygons[1].TexCoords[2].U.Should().Be(3); pie.Levels[2].Polygons[1].TexCoords[2].V.Should().Be(243); }
public void can_read_piev2_with_multi_level() { var data = @"PIE 2 TYPE 10200 TEXTURE 0 page-11-player-buildings.png 254 256 LEVELS 3 LEVEL 1 POINTS 56 -52 7 22 51 7 22 51 7 -21 -52 7 -21 51 0 -21 -52 0 -21 51 0 22 -52 0 22 -15 30 7 43 30 7 43 30 -6 -15 30 -6 48 7 -8 -20 7 -8 48 7 9 -20 7 9 -57 0 -39 57 0 -39 57 26 -39 -57 26 -39 57 0 39 57 26 39 -57 0 39 -57 26 39 17 77 12 17 82 12 -45 8 20 -42 7 20 -45 8 18 17 82 7 17 77 7 -42 7 18 -24 5 -1 -27 5 -1 -27 71 -1 -24 71 -1 -24 5 1 -24 71 1 -27 5 1 -27 71 1 17 7 -20 17 80 -8 22 80 -8 22 8 -20 17 80 9 22 80 9 17 8 21 22 8 21 17 82 -7 17 82 -12 -45 8 -20 -45 8 -18 -42 5 -18 17 77 -7 17 77 -12 -42 7 -20 POLYGONS 66 200 3 0 1 2 253 64 253 120 218 120 200 3 0 2 3 253 64 218 120 218 64 200 3 3 2 4 223 64 223 120 218 120 200 3 3 4 5 223 64 218 120 218 64 200 3 2 1 6 218 116 253 116 253 120 200 3 2 6 4 218 116 253 120 218 120 200 3 1 0 7 253 64 253 120 249 120 200 3 1 7 6 253 64 249 120 249 64 200 3 0 3 5 218 64 253 64 253 69 200 3 0 5 7 218 64 253 69 218 69 200 3 8 9 10 252 35 252 1 241 1 200 3 8 10 11 252 35 241 1 241 35 200 3 11 10 12 247 60 221 60 221 50 200 3 11 12 13 247 60 221 50 247 50 200 3 10 9 14 255 49 247 49 247 62 200 3 10 14 12 255 49 247 62 255 62 200 3 9 8 15 247 60 221 60 221 50 200 3 9 15 14 247 60 221 50 247 50 200 3 8 11 13 252 35 241 35 241 49 200 3 8 13 15 252 35 241 49 252 49 200 3 16 17 18 64 47 116 47 116 36 200 3 16 18 19 64 47 116 36 64 36 200 3 19 18 17 64 36 116 36 116 47 200 3 19 17 16 64 36 116 47 64 47 200 3 17 20 21 89 47 116 47 116 36 200 3 17 21 18 89 47 116 36 89 36 200 3 18 21 20 89 36 116 36 116 47 200 3 18 20 17 89 36 116 47 89 47 200 3 20 22 23 64 47 116 47 116 36 200 3 20 23 21 64 47 116 36 64 36 200 3 21 23 22 64 36 116 36 116 47 200 3 21 22 20 64 36 116 47 64 47 200 3 22 16 19 89 47 116 47 116 36 200 3 22 19 23 89 47 116 36 89 36 200 3 23 19 16 89 36 116 36 116 47 200 3 23 16 22 89 36 116 47 89 47 200 3 24 25 26 255 49 253 49 253 0 200 3 24 26 27 255 49 253 0 255 0 200 3 28 29 30 253 49 253 0 255 0 200 3 28 30 31 253 49 255 0 255 49 200 3 29 28 26 253 0 253 49 255 49 200 3 29 26 25 253 0 255 49 255 0 200 3 32 33 34 96 55 98 55 99 121 200 3 32 34 35 96 55 99 121 97 121 200 3 36 32 35 94 54 98 54 97 121 200 3 36 35 37 94 54 97 121 93 121 200 3 38 36 37 92 55 96 55 96 118 200 3 38 37 39 92 55 96 118 92 118 200 3 33 38 39 94 55 98 55 98 121 200 3 33 39 34 94 55 98 121 94 121 200 3 40 41 42 240 1 240 48 235 48 200 3 40 42 43 240 1 235 48 235 1 200 3 41 44 45 226 2 226 4 217 4 200 3 41 45 42 226 2 217 4 217 2 200 3 44 46 47 240 1 240 48 235 48 200 3 44 47 45 240 1 235 48 235 1 200 3 43 42 45 210 48 217 1 227 1 200 3 43 45 47 210 48 227 1 234 49 200 3 44 41 40 216 1 227 1 234 48 200 3 44 40 46 216 1 234 48 210 48 200 3 48 49 50 253 0 255 0 255 49 200 3 48 50 51 253 0 255 49 253 49 200 3 51 52 53 255 49 253 49 253 0 200 3 51 53 48 255 49 253 0 255 0 200 3 54 55 50 255 49 255 0 253 0 200 3 54 50 49 255 49 253 0 253 49 LEVEL 2 POINTS 8 -32 73 0 -26 73 5 -20 73 0 -26 73 -5 -20 22 0 -26 22 -5 -26 22 5 -32 22 0 POLYGONS 10 200 3 0 1 2 46 200 34 211 22 200 200 3 0 2 3 46 200 22 200 34 189 200 3 3 2 4 240 49 234 49 234 1 200 3 3 4 5 240 49 234 1 240 1 200 3 2 1 6 240 49 234 49 234 1 200 3 2 6 4 240 49 234 1 240 1 200 3 1 0 7 240 48 234 48 234 1 200 3 1 7 6 240 48 234 1 240 1 200 3 0 3 5 240 49 234 49 234 1 200 3 0 5 7 240 49 234 1 240 1 LEVEL 3 POINTS 26 31 85 7 26 103 7 8 98 7 12 80 7 8 98 -6 26 103 -6 31 85 -6 12 80 -6 19 88 2 17 96 2 -61 75 2 -59 66 2 -61 75 -1 17 96 -1 19 88 -1 -59 66 -1 -60 95 -2 -67 90 -2 -67 90 3 -60 95 3 -68 64 -2 -68 64 3 -50 35 -2 -50 35 3 -44 39 -2 -44 39 3 POLYGONS 30 200 3 0 1 2 28 244 27 252 2 251 200 3 0 2 3 28 244 2 251 3 243 200 3 4 5 6 27 251 3 251 3 243 200 3 4 6 7 27 251 3 243 27 243 200 3 6 5 1 6 251 6 245 24 245 200 3 1 0 6 24 245 24 251 6 251 200 3 5 4 2 28 252 1 252 1 243 200 3 5 2 1 28 252 1 243 28 243 200 3 4 7 3 25 244 25 250 7 250 200 3 4 3 2 25 244 7 250 7 244 200 3 8 9 10 240 48 235 48 235 1 200 3 8 10 11 240 48 235 1 240 1 200 3 12 13 14 240 1 240 48 235 48 200 3 12 14 15 240 1 235 48 235 1 200 3 13 12 10 239 2 239 48 236 48 200 3 13 10 9 239 2 236 48 236 2 200 3 16 17 18 31 252 30 247 31 247 200 3 16 18 19 31 252 31 247 31 252 200 3 17 20 21 31 244 17 244 17 242 200 3 17 21 18 31 244 17 242 31 242 200 3 20 22 23 17 244 0 244 0 242 200 3 20 23 21 17 244 0 242 17 242 200 3 24 16 19 0 252 31 252 31 250 200 3 24 19 25 0 252 31 250 0 250 200 3 23 25 19 0 244 0 252 31 252 200 3 23 19 21 0 244 31 252 17 242 200 3 21 19 18 17 242 31 252 31 244 200 3 16 24 22 31 252 0 252 0 244 200 3 16 22 20 31 252 0 244 17 242 200 3 16 20 17 31 252 17 242 31 244 "; var pie = PieGrammar.Pie.Parse( data ); var validator = new PieValidator(); validator.Validate( pie ).IsValid.Should().BeTrue(); pie.Version.Should().Be( 2 ); pie.Type.Should().Be( 10200 ); pie.Texture.Path.Should().Be( "page-11-player-buildings.png" ); pie.Texture.Width.Should().Be( 254 ); pie.Texture.Height.Should().Be( 256 ); pie.Levels.Length.Should().Be( 3 ); pie.Levels[0].Points.Length.Should().Be( 56 ); pie.Levels[1].Points.Length.Should().Be( 8 ); pie.Levels[2].Points.Length.Should().Be( 26 ); pie.Levels[0].Points[0].X.Should().Be( -52 ); pie.Levels[1].Points[1].Y.Should().Be( 73 ); pie.Levels[2].Points[2].Z.Should().Be( 7 ); pie.Levels[2].Polygons[1].Flags.Should().Be( PolygonFlags.Texture ); pie.Levels[2].Polygons[1].PointCount.Should().Be( 3 ); pie.Levels[2].Polygons[1].P1.Should().Be( 0 ); pie.Levels[2].Polygons[1].P2.Should().Be( 2 ); pie.Levels[2].Polygons[1].P3.Should().Be( 3); //TODO more thorough testing here pie.Levels[2].Polygons[1].TexCoords[2].U.Should().Be( 3 ); pie.Levels[2].Polygons[1].TexCoords[2].V.Should().Be( 243 ); }
public void can_read_simple_piev2() { var data = @"PIE 2 TYPE 10200 TEXTURE 0 page-17-droid-weapons.png 256 255 LEVELS 1 LEVEL 1 POINTS 13 14 3 0 7 3 12 7 37 12 14 37 0 -6 3 12 -6 37 12 -13 3 0 -13 37 0 -6 3 -12 -6 37 -12 7 3 -12 7 37 -12 0 37 0 POLYGONS 36 200 3 0 1 2 10 192 12 192 12 177 200 3 0 2 3 10 192 12 177 10 177 200 3 3 2 1 10 177 12 177 12 192 200 3 3 1 0 10 177 12 192 10 192 200 3 1 4 5 0 192 1 192 1 177 200 3 1 5 2 0 192 1 177 0 177 200 3 2 5 4 0 177 1 177 1 192 200 3 2 4 1 0 177 1 192 0 192 200 3 4 6 7 1 192 3 192 3 177 200 3 4 7 5 1 192 3 177 1 177 200 3 5 7 6 1 177 3 177 3 192 200 3 5 6 4 1 177 3 192 1 192 200 3 6 8 9 3 192 5 192 5 177 200 3 6 9 7 3 192 5 177 3 177 200 3 7 9 8 3 177 5 177 5 192 200 3 7 8 6 3 177 5 192 3 192 200 3 8 10 11 5 192 8 192 8 177 200 3 8 11 9 5 192 8 177 5 177 200 3 9 11 10 5 177 8 177 8 192 200 3 9 10 8 5 177 8 192 5 192 200 3 10 0 3 8 192 10 192 10 177 200 3 10 3 11 8 192 10 177 8 177 200 3 11 3 0 8 177 10 177 10 192 200 3 11 0 10 8 177 10 192 8 192 200 3 12 11 3 23 185 26 192 29 185 200 3 12 3 2 23 185 29 185 26 178 200 3 2 3 11 26 178 29 185 26 192 200 3 2 11 12 26 178 26 192 23 185 200 3 12 2 5 23 185 26 178 19 178 200 3 12 5 7 23 185 19 178 16 185 200 3 7 5 2 16 185 19 178 26 178 200 3 7 2 12 16 185 26 178 23 185 200 3 12 7 9 23 185 16 185 19 192 200 3 12 9 11 23 185 19 192 26 192 200 3 11 9 7 26 192 19 192 16 185 200 3 11 7 12 26 192 16 185 23 185" ; var pie = PieGrammar.Pie.Parse(data); var validator = new PieValidator(); validator.Validate(pie).IsValid.Should().BeTrue(); pie.Version.Should().Be(2); pie.Type.Should().Be(10200); pie.Texture.Path.Should().Be("page-17-droid-weapons.png"); pie.Texture.Height.Should().Be(255); pie.Texture.Width.Should().Be(256); pie.Levels.Length.Should().Be(1); pie.Levels[0].Points.Length.Should().Be(13); pie.Levels[0].Polygons.Length.Should().Be(36); pie.Levels[0].Points[12].X.Should().Be(0); pie.Levels[0].Points[12].Y.Should().Be(37); pie.Levels[0].Points[12].Z.Should().Be(0); pie.Levels[0].Polygons[35].Flags.Should().Be(PolygonFlags.Texture); pie.Levels[0].Polygons[35].PointCount.Should().Be(3); pie.Levels[0].Polygons[35].P1.Should().Be(11); pie.Levels[0].Polygons[35].P2.Should().Be(7); pie.Levels[0].Polygons[35].P3.Should().Be(12); //TODO more thorough testing here pie.Levels[0].Polygons[35].TexCoords[2].U.Should().Be(23); pie.Levels[0].Polygons[35].TexCoords[2].V.Should().Be(185); }