Merge branch 'bugfixes'

Conflicts:
	src/structure.cpp
master
vexed 2012-06-16 19:45:02 -04:00
commit 00f437c18d
33 changed files with 543 additions and 486 deletions

View File

@ -9,7 +9,7 @@ POINTS 4
-24 41 0
-24 0 0
POLYGONS 4
4200 3 0 1 2 8 1 32 32 31 255 31 225 1 225
4200 3 0 2 3 8 1 32 32 31 255 1 225 1 255
4200 3 3 2 1 8 1 32 32 1 255 1 225 31 225
4200 3 3 1 0 8 1 32 32 1 255 31 225 31 255
4200 3 0 1 2 8 100 32 32 31 255 31 225 1 225
4200 3 0 2 3 8 100 32 32 31 255 1 225 1 255
4200 3 3 2 1 8 100 32 32 1 255 1 225 31 225
4200 3 3 1 0 8 100 32 32 1 255 31 225 31 255

View File

@ -9,7 +9,7 @@ POINTS 4
8 8 0
-8 8 0
POLYGONS 4
4200 3 0 1 2 3 1 20 19 183 237 203 237 203 218
4200 3 0 2 3 3 1 20 19 183 237 203 218 183 218
4200 3 3 2 1 3 1 20 19 183 218 203 218 203 237
4200 3 3 1 0 3 1 20 19 183 218 203 237 183 237
4200 3 0 1 2 3 1024 20 19 183 237 203 237 203 218
4200 3 0 2 3 3 1024 20 19 183 237 203 218 183 218
4200 3 3 2 1 3 1024 20 19 183 218 203 218 203 237
4200 3 3 1 0 3 1024 20 19 183 218 203 237 183 237

View File

@ -29,27 +29,27 @@ POINTS 24
6 14 42
6 14 33
POLYGONS 24
4200 3 0 1 2 8 1 32 15 32 216 32 201 0 201
4200 3 0 2 3 8 1 32 15 32 216 0 201 0 216
4200 3 3 2 1 8 1 32 15 0 216 0 201 32 201
4200 3 3 1 0 8 1 32 15 0 216 32 201 32 216
4200 3 4 5 6 8 1 32 15 32 216 32 201 0 201
4200 3 4 6 7 8 1 32 15 32 216 0 201 0 216
4200 3 7 6 5 8 1 32 15 0 216 0 201 32 201
4200 3 7 5 4 8 1 32 15 0 216 32 201 32 216
4200 3 8 9 10 8 1 32 15 32 216 32 201 0 201
4200 3 8 10 11 8 1 32 15 32 216 0 201 0 216
4200 3 11 10 9 8 1 32 15 0 216 0 201 32 201
4200 3 11 9 8 8 1 32 15 0 216 32 201 32 216
4200 3 12 13 14 8 1 32 15 32 216 32 201 0 201
4200 3 12 14 15 8 1 32 15 32 216 0 201 0 216
4200 3 15 14 13 8 1 32 15 0 216 0 201 32 201
4200 3 15 13 12 8 1 32 15 0 216 32 201 32 216
4200 3 16 17 18 8 1 32 15 32 216 32 201 0 201
4200 3 16 18 19 8 1 32 15 32 216 0 201 0 216
4200 3 19 18 17 8 1 32 15 0 216 0 201 32 201
4200 3 19 17 16 8 1 32 15 0 216 32 201 32 216
4200 3 20 21 22 8 1 32 15 32 216 32 201 0 201
4200 3 20 22 23 8 1 32 15 32 216 0 201 0 216
4200 3 23 22 21 8 1 32 15 0 216 0 201 32 201
4200 3 23 21 20 8 1 32 15 0 216 32 201 32 216
4200 3 0 1 2 8 100 32 15 32 216 32 201 0 201
4200 3 0 2 3 8 100 32 15 32 216 0 201 0 216
4200 3 3 2 1 8 100 32 15 0 216 0 201 32 201
4200 3 3 1 0 8 100 32 15 0 216 32 201 32 216
4200 3 4 5 6 8 100 32 15 32 216 32 201 0 201
4200 3 4 6 7 8 100 32 15 32 216 0 201 0 216
4200 3 7 6 5 8 100 32 15 0 216 0 201 32 201
4200 3 7 5 4 8 100 32 15 0 216 32 201 32 216
4200 3 8 9 10 8 100 32 15 32 216 32 201 0 201
4200 3 8 10 11 8 100 32 15 32 216 0 201 0 216
4200 3 11 10 9 8 100 32 15 0 216 0 201 32 201
4200 3 11 9 8 8 100 32 15 0 216 32 201 32 216
4200 3 12 13 14 8 100 32 15 32 216 32 201 0 201
4200 3 12 14 15 8 100 32 15 32 216 0 201 0 216
4200 3 15 14 13 8 100 32 15 0 216 0 201 32 201
4200 3 15 13 12 8 100 32 15 0 216 32 201 32 216
4200 3 16 17 18 8 100 32 15 32 216 32 201 0 201
4200 3 16 18 19 8 100 32 15 32 216 0 201 0 216
4200 3 19 18 17 8 100 32 15 0 216 0 201 32 201
4200 3 19 17 16 8 100 32 15 0 216 32 201 32 216
4200 3 20 21 22 8 100 32 15 32 216 32 201 0 201
4200 3 20 22 23 8 100 32 15 32 216 0 201 0 216
4200 3 23 22 21 8 100 32 15 0 216 0 201 32 201
4200 3 23 21 20 8 100 32 15 0 216 32 201 32 216

View File

@ -29,27 +29,27 @@ POINTS 24
6 18 40
6 18 32
POLYGONS 24
4200 3 0 1 2 8 1 32 15 32 216 32 201 0 201
4200 3 0 2 3 8 1 32 15 32 216 0 201 0 216
4200 3 3 2 1 8 1 32 15 0 216 0 201 32 201
4200 3 3 1 0 8 1 32 15 0 216 32 201 32 216
4200 3 4 5 6 8 1 32 15 32 216 32 201 0 201
4200 3 4 6 7 8 1 32 15 32 216 0 201 0 216
4200 3 7 6 5 8 1 32 15 0 216 0 201 32 201
4200 3 7 5 4 8 1 32 15 0 216 32 201 32 216
4200 3 8 9 10 8 1 32 15 32 216 32 201 0 201
4200 3 8 10 11 8 1 32 15 32 216 0 201 0 216
4200 3 11 10 9 8 1 32 15 0 216 0 201 32 201
4200 3 11 9 8 8 1 32 15 0 216 32 201 32 216
4200 3 12 13 14 8 1 32 15 32 216 32 201 0 201
4200 3 12 14 15 8 1 32 15 32 216 0 201 0 216
4200 3 15 14 13 8 1 32 15 0 216 0 201 32 201
4200 3 15 13 12 8 1 32 15 0 216 32 201 32 216
4200 3 16 17 18 8 1 32 15 32 216 32 201 0 201
4200 3 16 18 19 8 1 32 15 32 216 0 201 0 216
4200 3 19 18 17 8 1 32 15 0 216 0 201 32 201
4200 3 19 17 16 8 1 32 15 0 216 32 201 32 216
4200 3 20 21 22 8 1 32 15 32 216 32 201 0 201
4200 3 20 22 23 8 1 32 15 32 216 0 201 0 216
4200 3 23 22 21 8 1 32 15 0 216 0 201 32 201
4200 3 23 21 20 8 1 32 15 0 216 32 201 32 216
4200 3 0 1 2 8 100 32 15 32 216 32 201 0 201
4200 3 0 2 3 8 100 32 15 32 216 0 201 0 216
4200 3 3 2 1 8 100 32 15 0 216 0 201 32 201
4200 3 3 1 0 8 100 32 15 0 216 32 201 32 216
4200 3 4 5 6 8 100 32 15 32 216 32 201 0 201
4200 3 4 6 7 8 100 32 15 32 216 0 201 0 216
4200 3 7 6 5 8 100 32 15 0 216 0 201 32 201
4200 3 7 5 4 8 100 32 15 0 216 32 201 32 216
4200 3 8 9 10 8 100 32 15 32 216 32 201 0 201
4200 3 8 10 11 8 100 32 15 32 216 0 201 0 216
4200 3 11 10 9 8 100 32 15 0 216 0 201 32 201
4200 3 11 9 8 8 100 32 15 0 216 32 201 32 216
4200 3 12 13 14 8 100 32 15 32 216 32 201 0 201
4200 3 12 14 15 8 100 32 15 32 216 0 201 0 216
4200 3 15 14 13 8 100 32 15 0 216 0 201 32 201
4200 3 15 13 12 8 100 32 15 0 216 32 201 32 216
4200 3 16 17 18 8 100 32 15 32 216 32 201 0 201
4200 3 16 18 19 8 100 32 15 32 216 0 201 0 216
4200 3 19 18 17 8 100 32 15 0 216 0 201 32 201
4200 3 19 17 16 8 100 32 15 0 216 32 201 32 216
4200 3 20 21 22 8 100 32 15 32 216 32 201 0 201
4200 3 20 22 23 8 100 32 15 32 216 0 201 0 216
4200 3 23 22 21 8 100 32 15 0 216 0 201 32 201
4200 3 23 21 20 8 100 32 15 0 216 32 201 32 216

View File

@ -45,43 +45,43 @@ POINTS 40
11 28 65
11 28 51
POLYGONS 40
4200 3 0 1 2 8 1 32 15 32 216 32 201 0 201
4200 3 0 2 3 8 1 32 15 32 216 0 201 0 216
4200 3 3 2 1 8 1 32 15 0 216 0 201 32 201
4200 3 3 1 0 8 1 32 15 0 216 32 201 32 216
4200 3 4 5 6 8 1 32 15 32 216 32 201 0 201
4200 3 4 6 7 8 1 32 15 32 216 0 201 0 216
4200 3 7 6 5 8 1 32 15 0 216 0 201 32 201
4200 3 7 5 4 8 1 32 15 0 216 32 201 32 216
4200 3 8 9 10 8 1 32 15 32 216 32 201 0 201
4200 3 8 10 11 8 1 32 15 32 216 0 201 0 216
4200 3 11 10 9 8 1 32 15 0 216 0 201 32 201
4200 3 11 9 8 8 1 32 15 0 216 32 201 32 216
4200 3 12 13 14 8 1 32 15 32 216 32 201 0 201
4200 3 12 14 15 8 1 32 15 32 216 0 201 0 216
4200 3 15 14 13 8 1 32 15 0 216 0 201 32 201
4200 3 15 13 12 8 1 32 15 0 216 32 201 32 216
4200 3 16 17 18 8 1 32 15 32 216 32 201 0 201
4200 3 16 18 19 8 1 32 15 32 216 0 201 0 216
4200 3 19 18 17 8 1 32 15 0 216 0 201 32 201
4200 3 19 17 16 8 1 32 15 0 216 32 201 32 216
4200 3 20 21 22 8 1 32 15 32 216 32 201 0 201
4200 3 20 22 23 8 1 32 15 32 216 0 201 0 216
4200 3 23 22 21 8 1 32 15 0 216 0 201 32 201
4200 3 23 21 20 8 1 32 15 0 216 32 201 32 216
4200 3 24 25 26 8 1 32 15 32 216 32 201 0 201
4200 3 24 26 27 8 1 32 15 32 216 0 201 0 216
4200 3 27 26 25 8 1 32 15 0 216 0 201 32 201
4200 3 27 25 24 8 1 32 15 0 216 32 201 32 216
4200 3 28 29 30 8 1 32 15 32 216 32 201 0 201
4200 3 28 30 31 8 1 32 15 32 216 0 201 0 216
4200 3 31 30 29 8 1 32 15 0 216 0 201 32 201
4200 3 31 29 28 8 1 32 15 0 216 32 201 32 216
4200 3 32 33 34 8 1 32 15 32 216 32 201 0 201
4200 3 32 34 35 8 1 32 15 32 216 0 201 0 216
4200 3 35 34 33 8 1 32 15 0 216 0 201 32 201
4200 3 35 33 32 8 1 32 15 0 216 32 201 32 216
4200 3 36 37 38 8 1 32 15 32 216 32 201 0 201
4200 3 36 38 39 8 1 32 15 32 216 0 201 0 216
4200 3 39 38 37 8 1 32 15 0 216 0 201 32 201
4200 3 39 37 36 8 1 32 15 0 216 32 201 32 216
4200 3 0 1 2 8 100 32 15 32 216 32 201 0 201
4200 3 0 2 3 8 100 32 15 32 216 0 201 0 216
4200 3 3 2 1 8 100 32 15 0 216 0 201 32 201
4200 3 3 1 0 8 100 32 15 0 216 32 201 32 216
4200 3 4 5 6 8 100 32 15 32 216 32 201 0 201
4200 3 4 6 7 8 100 32 15 32 216 0 201 0 216
4200 3 7 6 5 8 100 32 15 0 216 0 201 32 201
4200 3 7 5 4 8 100 32 15 0 216 32 201 32 216
4200 3 8 9 10 8 100 32 15 32 216 32 201 0 201
4200 3 8 10 11 8 100 32 15 32 216 0 201 0 216
4200 3 11 10 9 8 100 32 15 0 216 0 201 32 201
4200 3 11 9 8 8 100 32 15 0 216 32 201 32 216
4200 3 12 13 14 8 100 32 15 32 216 32 201 0 201
4200 3 12 14 15 8 100 32 15 32 216 0 201 0 216
4200 3 15 14 13 8 100 32 15 0 216 0 201 32 201
4200 3 15 13 12 8 100 32 15 0 216 32 201 32 216
4200 3 16 17 18 8 100 32 15 32 216 32 201 0 201
4200 3 16 18 19 8 100 32 15 32 216 0 201 0 216
4200 3 19 18 17 8 100 32 15 0 216 0 201 32 201
4200 3 19 17 16 8 100 32 15 0 216 32 201 32 216
4200 3 20 21 22 8 100 32 15 32 216 32 201 0 201
4200 3 20 22 23 8 100 32 15 32 216 0 201 0 216
4200 3 23 22 21 8 100 32 15 0 216 0 201 32 201
4200 3 23 21 20 8 100 32 15 0 216 32 201 32 216
4200 3 24 25 26 8 100 32 15 32 216 32 201 0 201
4200 3 24 26 27 8 100 32 15 32 216 0 201 0 216
4200 3 27 26 25 8 100 32 15 0 216 0 201 32 201
4200 3 27 25 24 8 100 32 15 0 216 32 201 32 216
4200 3 28 29 30 8 100 32 15 32 216 32 201 0 201
4200 3 28 30 31 8 100 32 15 32 216 0 201 0 216
4200 3 31 30 29 8 100 32 15 0 216 0 201 32 201
4200 3 31 29 28 8 100 32 15 0 216 32 201 32 216
4200 3 32 33 34 8 100 32 15 32 216 32 201 0 201
4200 3 32 34 35 8 100 32 15 32 216 0 201 0 216
4200 3 35 34 33 8 100 32 15 0 216 0 201 32 201
4200 3 35 33 32 8 100 32 15 0 216 32 201 32 216
4200 3 36 37 38 8 100 32 15 32 216 32 201 0 201
4200 3 36 38 39 8 100 32 15 32 216 0 201 0 216
4200 3 39 38 37 8 100 32 15 0 216 0 201 32 201
4200 3 39 37 36 8 100 32 15 0 216 32 201 32 216

View File

@ -45,43 +45,43 @@ POINTS 40
11 18 71
11 18 56
POLYGONS 40
4200 3 0 1 2 8 1 32 15 32 216 32 201 0 201
4200 3 0 2 3 8 1 32 15 32 216 0 201 0 216
4200 3 3 2 1 8 1 32 15 0 216 0 201 32 201
4200 3 3 1 0 8 1 32 15 0 216 32 201 32 216
4200 3 4 5 6 8 1 32 15 32 216 32 201 0 201
4200 3 4 6 7 8 1 32 15 32 216 0 201 0 216
4200 3 7 6 5 8 1 32 15 0 216 0 201 32 201
4200 3 7 5 4 8 1 32 15 0 216 32 201 32 216
4200 3 8 9 10 8 1 32 15 32 216 32 201 0 201
4200 3 8 10 11 8 1 32 15 32 216 0 201 0 216
4200 3 11 10 9 8 1 32 15 0 216 0 201 32 201
4200 3 11 9 8 8 1 32 15 0 216 32 201 32 216
4200 3 12 13 14 8 1 32 15 32 216 32 201 0 201
4200 3 12 14 15 8 1 32 15 32 216 0 201 0 216
4200 3 15 14 13 8 1 32 15 0 216 0 201 32 201
4200 3 15 13 12 8 1 32 15 0 216 32 201 32 216
4200 3 16 17 18 8 1 32 15 32 216 32 201 0 201
4200 3 16 18 19 8 1 32 15 32 216 0 201 0 216
4200 3 19 18 17 8 1 32 15 0 216 0 201 32 201
4200 3 19 17 16 8 1 32 15 0 216 32 201 32 216
4200 3 20 21 22 8 1 32 15 32 216 32 201 0 201
4200 3 20 22 23 8 1 32 15 32 216 0 201 0 216
4200 3 23 22 21 8 1 32 15 0 216 0 201 32 201
4200 3 23 21 20 8 1 32 15 0 216 32 201 32 216
4200 3 24 25 26 8 1 32 15 32 216 32 201 0 201
4200 3 24 26 27 8 1 32 15 32 216 0 201 0 216
4200 3 27 26 25 8 1 32 15 0 216 0 201 32 201
4200 3 27 25 24 8 1 32 15 0 216 32 201 32 216
4200 3 28 29 30 8 1 32 15 32 216 32 201 0 201
4200 3 28 30 31 8 1 32 15 32 216 0 201 0 216
4200 3 31 30 29 8 1 32 15 0 216 0 201 32 201
4200 3 31 29 28 8 1 32 15 0 216 32 201 32 216
4200 3 32 33 34 8 1 32 15 32 216 32 201 0 201
4200 3 32 34 35 8 1 32 15 32 216 0 201 0 216
4200 3 35 34 33 8 1 32 15 0 216 0 201 32 201
4200 3 35 33 32 8 1 32 15 0 216 32 201 32 216
4200 3 36 37 38 8 1 32 15 32 216 32 201 0 201
4200 3 36 38 39 8 1 32 15 32 216 0 201 0 216
4200 3 39 38 37 8 1 32 15 0 216 0 201 32 201
4200 3 39 37 36 8 1 32 15 0 216 32 201 32 216
4200 3 0 1 2 8 100 32 15 32 216 32 201 0 201
4200 3 0 2 3 8 100 32 15 32 216 0 201 0 216
4200 3 3 2 1 8 100 32 15 0 216 0 201 32 201
4200 3 3 1 0 8 100 32 15 0 216 32 201 32 216
4200 3 4 5 6 8 100 32 15 32 216 32 201 0 201
4200 3 4 6 7 8 100 32 15 32 216 0 201 0 216
4200 3 7 6 5 8 100 32 15 0 216 0 201 32 201
4200 3 7 5 4 8 100 32 15 0 216 32 201 32 216
4200 3 8 9 10 8 100 32 15 32 216 32 201 0 201
4200 3 8 10 11 8 100 32 15 32 216 0 201 0 216
4200 3 11 10 9 8 100 32 15 0 216 0 201 32 201
4200 3 11 9 8 8 100 32 15 0 216 32 201 32 216
4200 3 12 13 14 8 100 32 15 32 216 32 201 0 201
4200 3 12 14 15 8 100 32 15 32 216 0 201 0 216
4200 3 15 14 13 8 100 32 15 0 216 0 201 32 201
4200 3 15 13 12 8 100 32 15 0 216 32 201 32 216
4200 3 16 17 18 8 100 32 15 32 216 32 201 0 201
4200 3 16 18 19 8 100 32 15 32 216 0 201 0 216
4200 3 19 18 17 8 100 32 15 0 216 0 201 32 201
4200 3 19 17 16 8 100 32 15 0 216 32 201 32 216
4200 3 20 21 22 8 100 32 15 32 216 32 201 0 201
4200 3 20 22 23 8 100 32 15 32 216 0 201 0 216
4200 3 23 22 21 8 100 32 15 0 216 0 201 32 201
4200 3 23 21 20 8 100 32 15 0 216 32 201 32 216
4200 3 24 25 26 8 100 32 15 32 216 32 201 0 201
4200 3 24 26 27 8 100 32 15 32 216 0 201 0 216
4200 3 27 26 25 8 100 32 15 0 216 0 201 32 201
4200 3 27 25 24 8 100 32 15 0 216 32 201 32 216
4200 3 28 29 30 8 100 32 15 32 216 32 201 0 201
4200 3 28 30 31 8 100 32 15 32 216 0 201 0 216
4200 3 31 30 29 8 100 32 15 0 216 0 201 32 201
4200 3 31 29 28 8 100 32 15 0 216 32 201 32 216
4200 3 32 33 34 8 100 32 15 32 216 32 201 0 201
4200 3 32 34 35 8 100 32 15 32 216 0 201 0 216
4200 3 35 34 33 8 100 32 15 0 216 0 201 32 201
4200 3 35 33 32 8 100 32 15 0 216 32 201 32 216
4200 3 36 37 38 8 100 32 15 32 216 32 201 0 201
4200 3 36 38 39 8 100 32 15 32 216 0 201 0 216
4200 3 39 38 37 8 100 32 15 0 216 0 201 32 201
4200 3 39 37 36 8 100 32 15 0 216 32 201 32 216

View File

@ -45,43 +45,43 @@ POINTS 40
11 22 72
11 22 58
POLYGONS 40
4200 3 0 1 2 8 1 32 15 32 216 32 201 0 201
4200 3 0 2 3 8 1 32 15 32 216 0 201 0 216
4200 3 3 2 1 8 1 32 15 0 216 0 201 32 201
4200 3 3 1 0 8 1 32 15 0 216 32 201 32 216
4200 3 4 5 6 8 1 32 15 32 216 32 201 0 201
4200 3 4 6 7 8 1 32 15 32 216 0 201 0 216
4200 3 7 6 5 8 1 32 15 0 216 0 201 32 201
4200 3 7 5 4 8 1 32 15 0 216 32 201 32 216
4200 3 8 9 10 8 1 32 15 32 216 32 201 0 201
4200 3 8 10 11 8 1 32 15 32 216 0 201 0 216
4200 3 11 10 9 8 1 32 15 0 216 0 201 32 201
4200 3 11 9 8 8 1 32 15 0 216 32 201 32 216
4200 3 12 13 14 8 1 32 15 32 216 32 201 0 201
4200 3 12 14 15 8 1 32 15 32 216 0 201 0 216
4200 3 15 14 13 8 1 32 15 0 216 0 201 32 201
4200 3 15 13 12 8 1 32 15 0 216 32 201 32 216
4200 3 16 17 18 8 1 32 15 32 216 32 201 0 201
4200 3 16 18 19 8 1 32 15 32 216 0 201 0 216
4200 3 19 18 17 8 1 32 15 0 216 0 201 32 201
4200 3 19 17 16 8 1 32 15 0 216 32 201 32 216
4200 3 20 21 22 8 1 32 15 32 216 32 201 0 201
4200 3 20 22 23 8 1 32 15 32 216 0 201 0 216
4200 3 23 22 21 8 1 32 15 0 216 0 201 32 201
4200 3 23 21 20 8 1 32 15 0 216 32 201 32 216
4200 3 24 25 26 8 1 32 15 32 216 32 201 0 201
4200 3 24 26 27 8 1 32 15 32 216 0 201 0 216
4200 3 27 26 25 8 1 32 15 0 216 0 201 32 201
4200 3 27 25 24 8 1 32 15 0 216 32 201 32 216
4200 3 28 29 30 8 1 32 15 32 216 32 201 0 201
4200 3 28 30 31 8 1 32 15 32 216 0 201 0 216
4200 3 31 30 29 8 1 32 15 0 216 0 201 32 201
4200 3 31 29 28 8 1 32 15 0 216 32 201 32 216
4200 3 32 33 34 8 1 32 15 32 216 32 201 0 201
4200 3 32 34 35 8 1 32 15 32 216 0 201 0 216
4200 3 35 34 33 8 1 32 15 0 216 0 201 32 201
4200 3 35 33 32 8 1 32 15 0 216 32 201 32 216
4200 3 36 37 38 8 1 32 15 32 216 32 201 0 201
4200 3 36 38 39 8 1 32 15 32 216 0 201 0 216
4200 3 39 38 37 8 1 32 15 0 216 0 201 32 201
4200 3 39 37 36 8 1 32 15 0 216 32 201 32 216
4200 3 0 1 2 8 100 32 15 32 216 32 201 0 201
4200 3 0 2 3 8 100 32 15 32 216 0 201 0 216
4200 3 3 2 1 8 100 32 15 0 216 0 201 32 201
4200 3 3 1 0 8 100 32 15 0 216 32 201 32 216
4200 3 4 5 6 8 100 32 15 32 216 32 201 0 201
4200 3 4 6 7 8 100 32 15 32 216 0 201 0 216
4200 3 7 6 5 8 100 32 15 0 216 0 201 32 201
4200 3 7 5 4 8 100 32 15 0 216 32 201 32 216
4200 3 8 9 10 8 100 32 15 32 216 32 201 0 201
4200 3 8 10 11 8 100 32 15 32 216 0 201 0 216
4200 3 11 10 9 8 100 32 15 0 216 0 201 32 201
4200 3 11 9 8 8 100 32 15 0 216 32 201 32 216
4200 3 12 13 14 8 100 32 15 32 216 32 201 0 201
4200 3 12 14 15 8 100 32 15 32 216 0 201 0 216
4200 3 15 14 13 8 100 32 15 0 216 0 201 32 201
4200 3 15 13 12 8 100 32 15 0 216 32 201 32 216
4200 3 16 17 18 8 100 32 15 32 216 32 201 0 201
4200 3 16 18 19 8 100 32 15 32 216 0 201 0 216
4200 3 19 18 17 8 100 32 15 0 216 0 201 32 201
4200 3 19 17 16 8 100 32 15 0 216 32 201 32 216
4200 3 20 21 22 8 100 32 15 32 216 32 201 0 201
4200 3 20 22 23 8 100 32 15 32 216 0 201 0 216
4200 3 23 22 21 8 100 32 15 0 216 0 201 32 201
4200 3 23 21 20 8 100 32 15 0 216 32 201 32 216
4200 3 24 25 26 8 100 32 15 32 216 32 201 0 201
4200 3 24 26 27 8 100 32 15 32 216 0 201 0 216
4200 3 27 26 25 8 100 32 15 0 216 0 201 32 201
4200 3 27 25 24 8 100 32 15 0 216 32 201 32 216
4200 3 28 29 30 8 100 32 15 32 216 32 201 0 201
4200 3 28 30 31 8 100 32 15 32 216 0 201 0 216
4200 3 31 30 29 8 100 32 15 0 216 0 201 32 201
4200 3 31 29 28 8 100 32 15 0 216 32 201 32 216
4200 3 32 33 34 8 100 32 15 32 216 32 201 0 201
4200 3 32 34 35 8 100 32 15 32 216 0 201 0 216
4200 3 35 34 33 8 100 32 15 0 216 0 201 32 201
4200 3 35 33 32 8 100 32 15 0 216 32 201 32 216
4200 3 36 37 38 8 100 32 15 32 216 32 201 0 201
4200 3 36 38 39 8 100 32 15 32 216 0 201 0 216
4200 3 39 38 37 8 100 32 15 0 216 0 201 32 201
4200 3 39 37 36 8 100 32 15 0 216 32 201 32 216

View File

@ -45,43 +45,43 @@ POINTS 40
11 20 67
11 20 53
POLYGONS 40
4200 3 0 1 2 8 1 32 15 32 216 32 201 0 201
4200 3 0 2 3 8 1 32 15 32 216 0 201 0 216
4200 3 3 2 1 8 1 32 15 0 216 0 201 32 201
4200 3 3 1 0 8 1 32 15 0 216 32 201 32 216
4200 3 4 5 6 8 1 32 15 32 216 32 201 0 201
4200 3 4 6 7 8 1 32 15 32 216 0 201 0 216
4200 3 7 6 5 8 1 32 15 0 216 0 201 32 201
4200 3 7 5 4 8 1 32 15 0 216 32 201 32 216
4200 3 8 9 10 8 1 32 15 32 216 32 201 0 201
4200 3 8 10 11 8 1 32 15 32 216 0 201 0 216
4200 3 11 10 9 8 1 32 15 0 216 0 201 32 201
4200 3 11 9 8 8 1 32 15 0 216 32 201 32 216
4200 3 12 13 14 8 1 32 15 32 216 32 201 0 201
4200 3 12 14 15 8 1 32 15 32 216 0 201 0 216
4200 3 15 14 13 8 1 32 15 0 216 0 201 32 201
4200 3 15 13 12 8 1 32 15 0 216 32 201 32 216
4200 3 16 17 18 8 1 32 15 32 216 32 201 0 201
4200 3 16 18 19 8 1 32 15 32 216 0 201 0 216
4200 3 19 18 17 8 1 32 15 0 216 0 201 32 201
4200 3 19 17 16 8 1 32 15 0 216 32 201 32 216
4200 3 20 21 22 8 1 32 15 32 216 32 201 0 201
4200 3 20 22 23 8 1 32 15 32 216 0 201 0 216
4200 3 23 22 21 8 1 32 15 0 216 0 201 32 201
4200 3 23 21 20 8 1 32 15 0 216 32 201 32 216
4200 3 24 25 26 8 1 32 15 32 216 32 201 0 201
4200 3 24 26 27 8 1 32 15 32 216 0 201 0 216
4200 3 27 26 25 8 1 32 15 0 216 0 201 32 201
4200 3 27 25 24 8 1 32 15 0 216 32 201 32 216
4200 3 28 29 30 8 1 32 15 32 216 32 201 0 201
4200 3 28 30 31 8 1 32 15 32 216 0 201 0 216
4200 3 31 30 29 8 1 32 15 0 216 0 201 32 201
4200 3 31 29 28 8 1 32 15 0 216 32 201 32 216
4200 3 32 33 34 8 1 32 15 32 216 32 201 0 201
4200 3 32 34 35 8 1 32 15 32 216 0 201 0 216
4200 3 35 34 33 8 1 32 15 0 216 0 201 32 201
4200 3 35 33 32 8 1 32 15 0 216 32 201 32 216
4200 3 36 37 38 8 1 32 15 32 216 32 201 0 201
4200 3 36 38 39 8 1 32 15 32 216 0 201 0 216
4200 3 39 38 37 8 1 32 15 0 216 0 201 32 201
4200 3 39 37 36 8 1 32 15 0 216 32 201 32 216
4200 3 0 1 2 8 100 32 15 32 216 32 201 0 201
4200 3 0 2 3 8 100 32 15 32 216 0 201 0 216
4200 3 3 2 1 8 100 32 15 0 216 0 201 32 201
4200 3 3 1 0 8 100 32 15 0 216 32 201 32 216
4200 3 4 5 6 8 100 32 15 32 216 32 201 0 201
4200 3 4 6 7 8 100 32 15 32 216 0 201 0 216
4200 3 7 6 5 8 100 32 15 0 216 0 201 32 201
4200 3 7 5 4 8 100 32 15 0 216 32 201 32 216
4200 3 8 9 10 8 100 32 15 32 216 32 201 0 201
4200 3 8 10 11 8 100 32 15 32 216 0 201 0 216
4200 3 11 10 9 8 100 32 15 0 216 0 201 32 201
4200 3 11 9 8 8 100 32 15 0 216 32 201 32 216
4200 3 12 13 14 8 100 32 15 32 216 32 201 0 201
4200 3 12 14 15 8 100 32 15 32 216 0 201 0 216
4200 3 15 14 13 8 100 32 15 0 216 0 201 32 201
4200 3 15 13 12 8 100 32 15 0 216 32 201 32 216
4200 3 16 17 18 8 100 32 15 32 216 32 201 0 201
4200 3 16 18 19 8 100 32 15 32 216 0 201 0 216
4200 3 19 18 17 8 100 32 15 0 216 0 201 32 201
4200 3 19 17 16 8 100 32 15 0 216 32 201 32 216
4200 3 20 21 22 8 100 32 15 32 216 32 201 0 201
4200 3 20 22 23 8 100 32 15 32 216 0 201 0 216
4200 3 23 22 21 8 100 32 15 0 216 0 201 32 201
4200 3 23 21 20 8 100 32 15 0 216 32 201 32 216
4200 3 24 25 26 8 100 32 15 32 216 32 201 0 201
4200 3 24 26 27 8 100 32 15 32 216 0 201 0 216
4200 3 27 26 25 8 100 32 15 0 216 0 201 32 201
4200 3 27 25 24 8 100 32 15 0 216 32 201 32 216
4200 3 28 29 30 8 100 32 15 32 216 32 201 0 201
4200 3 28 30 31 8 100 32 15 32 216 0 201 0 216
4200 3 31 30 29 8 100 32 15 0 216 0 201 32 201
4200 3 31 29 28 8 100 32 15 0 216 32 201 32 216
4200 3 32 33 34 8 100 32 15 32 216 32 201 0 201
4200 3 32 34 35 8 100 32 15 32 216 0 201 0 216
4200 3 35 34 33 8 100 32 15 0 216 0 201 32 201
4200 3 35 33 32 8 100 32 15 0 216 32 201 32 216
4200 3 36 37 38 8 100 32 15 32 216 32 201 0 201
4200 3 36 38 39 8 100 32 15 32 216 0 201 0 216
4200 3 39 38 37 8 100 32 15 0 216 0 201 32 201
4200 3 39 37 36 8 100 32 15 0 216 32 201 32 216

View File

@ -29,27 +29,27 @@ POINTS 24
6 20 51
6 20 42
POLYGONS 24
4200 3 0 1 2 8 1 32 15 32 216 32 201 0 201
4200 3 0 2 3 8 1 32 15 32 216 0 201 0 216
4200 3 3 2 1 8 1 32 15 0 216 0 201 32 201
4200 3 3 1 0 8 1 32 15 0 216 32 201 32 216
4200 3 4 5 6 8 1 32 15 32 216 32 201 0 201
4200 3 4 6 7 8 1 32 15 32 216 0 201 0 216
4200 3 7 6 5 8 1 32 15 0 216 0 201 32 201
4200 3 7 5 4 8 1 32 15 0 216 32 201 32 216
4200 3 8 9 10 8 1 32 15 32 216 32 201 0 201
4200 3 8 10 11 8 1 32 15 32 216 0 201 0 216
4200 3 11 10 9 8 1 32 15 0 216 0 201 32 201
4200 3 11 9 8 8 1 32 15 0 216 32 201 32 216
4200 3 12 13 14 8 1 32 15 32 216 32 201 0 201
4200 3 12 14 15 8 1 32 15 32 216 0 201 0 216
4200 3 15 14 13 8 1 32 15 0 216 0 201 32 201
4200 3 15 13 12 8 1 32 15 0 216 32 201 32 216
4200 3 16 17 18 8 1 32 15 32 216 32 201 0 201
4200 3 16 18 19 8 1 32 15 32 216 0 201 0 216
4200 3 19 18 17 8 1 32 15 0 216 0 201 32 201
4200 3 19 17 16 8 1 32 15 0 216 32 201 32 216
4200 3 20 21 22 8 1 32 15 32 216 32 201 0 201
4200 3 20 22 23 8 1 32 15 32 216 0 201 0 216
4200 3 23 22 21 8 1 32 15 0 216 0 201 32 201
4200 3 23 21 20 8 1 32 15 0 216 32 201 32 216
4200 3 0 1 2 8 100 32 15 32 216 32 201 0 201
4200 3 0 2 3 8 100 32 15 32 216 0 201 0 216
4200 3 3 2 1 8 100 32 15 0 216 0 201 32 201
4200 3 3 1 0 8 100 32 15 0 216 32 201 32 216
4200 3 4 5 6 8 100 32 15 32 216 32 201 0 201
4200 3 4 6 7 8 100 32 15 32 216 0 201 0 216
4200 3 7 6 5 8 100 32 15 0 216 0 201 32 201
4200 3 7 5 4 8 100 32 15 0 216 32 201 32 216
4200 3 8 9 10 8 100 32 15 32 216 32 201 0 201
4200 3 8 10 11 8 100 32 15 32 216 0 201 0 216
4200 3 11 10 9 8 100 32 15 0 216 0 201 32 201
4200 3 11 9 8 8 100 32 15 0 216 32 201 32 216
4200 3 12 13 14 8 100 32 15 32 216 32 201 0 201
4200 3 12 14 15 8 100 32 15 32 216 0 201 0 216
4200 3 15 14 13 8 100 32 15 0 216 0 201 32 201
4200 3 15 13 12 8 100 32 15 0 216 32 201 32 216
4200 3 16 17 18 8 100 32 15 32 216 32 201 0 201
4200 3 16 18 19 8 100 32 15 32 216 0 201 0 216
4200 3 19 18 17 8 100 32 15 0 216 0 201 32 201
4200 3 19 17 16 8 100 32 15 0 216 32 201 32 216
4200 3 20 21 22 8 100 32 15 32 216 32 201 0 201
4200 3 20 22 23 8 100 32 15 32 216 0 201 0 216
4200 3 23 22 21 8 100 32 15 0 216 0 201 32 201
4200 3 23 21 20 8 100 32 15 0 216 32 201 32 216

View File

@ -29,27 +29,27 @@ POINTS 24
10 19 54
10 19 43
POLYGONS 24
4200 3 0 1 2 8 1 32 15 32 216 32 201 0 201
4200 3 0 2 3 8 1 32 15 32 216 0 201 0 216
4200 3 3 2 1 8 1 32 15 0 216 0 201 32 201
4200 3 3 1 0 8 1 32 15 0 216 32 201 32 216
4200 3 4 5 6 8 1 32 15 32 216 32 201 0 201
4200 3 4 6 7 8 1 32 15 32 216 0 201 0 216
4200 3 7 6 5 8 1 32 15 0 216 0 201 32 201
4200 3 7 5 4 8 1 32 15 0 216 32 201 32 216
4200 3 8 9 10 8 1 32 15 32 216 32 201 0 201
4200 3 8 10 11 8 1 32 15 32 216 0 201 0 216
4200 3 11 10 9 8 1 32 15 0 216 0 201 32 201
4200 3 11 9 8 8 1 32 15 0 216 32 201 32 216
4200 3 12 13 14 8 1 32 15 32 216 32 201 0 201
4200 3 12 14 15 8 1 32 15 32 216 0 201 0 216
4200 3 15 14 13 8 1 32 15 0 216 0 201 32 201
4200 3 15 13 12 8 1 32 15 0 216 32 201 32 216
4200 3 16 17 18 8 1 32 15 32 216 32 201 0 201
4200 3 16 18 19 8 1 32 15 32 216 0 201 0 216
4200 3 19 18 17 8 1 32 15 0 216 0 201 32 201
4200 3 19 17 16 8 1 32 15 0 216 32 201 32 216
4200 3 20 21 22 8 1 32 15 32 216 32 201 0 201
4200 3 20 22 23 8 1 32 15 32 216 0 201 0 216
4200 3 23 22 21 8 1 32 15 0 216 0 201 32 201
4200 3 23 21 20 8 1 32 15 0 216 32 201 32 216
4200 3 0 1 2 8 100 32 15 32 216 32 201 0 201
4200 3 0 2 3 8 100 32 15 32 216 0 201 0 216
4200 3 3 2 1 8 100 32 15 0 216 0 201 32 201
4200 3 3 1 0 8 100 32 15 0 216 32 201 32 216
4200 3 4 5 6 8 100 32 15 32 216 32 201 0 201
4200 3 4 6 7 8 100 32 15 32 216 0 201 0 216
4200 3 7 6 5 8 100 32 15 0 216 0 201 32 201
4200 3 7 5 4 8 100 32 15 0 216 32 201 32 216
4200 3 8 9 10 8 100 32 15 32 216 32 201 0 201
4200 3 8 10 11 8 100 32 15 32 216 0 201 0 216
4200 3 11 10 9 8 100 32 15 0 216 0 201 32 201
4200 3 11 9 8 8 100 32 15 0 216 32 201 32 216
4200 3 12 13 14 8 100 32 15 32 216 32 201 0 201
4200 3 12 14 15 8 100 32 15 32 216 0 201 0 216
4200 3 15 14 13 8 100 32 15 0 216 0 201 32 201
4200 3 15 13 12 8 100 32 15 0 216 32 201 32 216
4200 3 16 17 18 8 100 32 15 32 216 32 201 0 201
4200 3 16 18 19 8 100 32 15 32 216 0 201 0 216
4200 3 19 18 17 8 100 32 15 0 216 0 201 32 201
4200 3 19 17 16 8 100 32 15 0 216 32 201 32 216
4200 3 20 21 22 8 100 32 15 32 216 32 201 0 201
4200 3 20 22 23 8 100 32 15 32 216 0 201 0 216
4200 3 23 22 21 8 100 32 15 0 216 0 201 32 201
4200 3 23 21 20 8 100 32 15 0 216 32 201 32 216

View File

@ -9,7 +9,7 @@ POINTS 4
21 21 0
-21 21 0
POLYGONS 4
4200 3 0 1 2 4 1 27 27 146 207 173 207 173 180
4200 3 0 2 3 4 1 27 27 146 207 173 180 146 180
4200 3 3 2 1 4 1 27 27 146 180 173 180 173 207
4200 3 3 1 0 4 1 27 27 146 180 173 207 146 207
4200 3 0 1 2 4 1000 27 27 146 207 173 207 173 180
4200 3 0 2 3 4 1000 27 27 146 207 173 180 146 180
4200 3 3 2 1 4 1000 27 27 146 180 173 180 173 207
4200 3 3 1 0 4 1000 27 27 146 180 173 207 146 207

View File

@ -9,7 +9,7 @@ POINTS 4
21 21 0
-21 21 0
POLYGONS 4
4200 3 0 1 2 4 1 27 27 146 151 173 151 173 124
4200 3 0 2 3 4 1 27 27 146 151 173 124 146 124
4200 3 3 2 1 4 1 27 27 146 124 173 124 173 151
4200 3 3 1 0 4 1 27 27 146 124 173 151 146 151
4200 3 0 1 2 4 1000 27 27 146 151 173 151 173 124
4200 3 0 2 3 4 1000 27 27 146 151 173 124 146 124
4200 3 3 2 1 4 1000 27 27 146 124 173 124 173 151
4200 3 3 1 0 4 1000 27 27 146 124 173 151 146 151

View File

@ -9,7 +9,7 @@ POINTS 4
21 21 0
-21 21 0
POLYGONS 4
4200 3 0 1 2 4 1 27 27 146 179 173 179 173 152
4200 3 0 2 3 4 1 27 27 146 179 173 152 146 152
4200 3 3 2 1 4 1 27 27 146 152 173 152 173 179
4200 3 3 1 0 4 1 27 27 146 152 173 179 146 179
4200 3 0 1 2 4 1000 27 27 146 179 173 179 173 152
4200 3 0 2 3 4 1000 27 27 146 179 173 152 146 152
4200 3 3 2 1 4 1000 27 27 146 152 173 152 173 179
4200 3 3 1 0 4 1000 27 27 146 152 173 179 146 179

View File

@ -29,27 +29,27 @@ POINTS 24
6 14 40
6 14 31
POLYGONS 24
4200 3 0 1 2 8 1 32 15 32 216 32 201 0 201
4200 3 0 2 3 8 1 32 15 32 216 0 201 0 216
4200 3 3 2 1 8 1 32 15 0 216 0 201 32 201
4200 3 3 1 0 8 1 32 15 0 216 32 201 32 216
4200 3 4 5 6 8 1 32 15 32 216 32 201 0 201
4200 3 4 6 7 8 1 32 15 32 216 0 201 0 216
4200 3 7 6 5 8 1 32 15 0 216 0 201 32 201
4200 3 7 5 4 8 1 32 15 0 216 32 201 32 216
4200 3 8 9 10 8 1 32 15 32 216 32 201 0 201
4200 3 8 10 11 8 1 32 15 32 216 0 201 0 216
4200 3 11 10 9 8 1 32 15 0 216 0 201 32 201
4200 3 11 9 8 8 1 32 15 0 216 32 201 32 216
4200 3 12 13 14 8 1 32 15 32 216 32 201 0 201
4200 3 12 14 15 8 1 32 15 32 216 0 201 0 216
4200 3 15 14 13 8 1 32 15 0 216 0 201 32 201
4200 3 15 13 12 8 1 32 15 0 216 32 201 32 216
4200 3 16 17 18 8 1 32 15 32 216 32 201 0 201
4200 3 16 18 19 8 1 32 15 32 216 0 201 0 216
4200 3 19 18 17 8 1 32 15 0 216 0 201 32 201
4200 3 19 17 16 8 1 32 15 0 216 32 201 32 216
4200 3 20 21 22 8 1 32 15 32 216 32 201 0 201
4200 3 20 22 23 8 1 32 15 32 216 0 201 0 216
4200 3 23 22 21 8 1 32 15 0 216 0 201 32 201
4200 3 23 21 20 8 1 32 15 0 216 32 201 32 216
4200 3 0 1 2 8 100 32 15 32 216 32 201 0 201
4200 3 0 2 3 8 100 32 15 32 216 0 201 0 216
4200 3 3 2 1 8 100 32 15 0 216 0 201 32 201
4200 3 3 1 0 8 100 32 15 0 216 32 201 32 216
4200 3 4 5 6 8 100 32 15 32 216 32 201 0 201
4200 3 4 6 7 8 100 32 15 32 216 0 201 0 216
4200 3 7 6 5 8 100 32 15 0 216 0 201 32 201
4200 3 7 5 4 8 100 32 15 0 216 32 201 32 216
4200 3 8 9 10 8 100 32 15 32 216 32 201 0 201
4200 3 8 10 11 8 100 32 15 32 216 0 201 0 216
4200 3 11 10 9 8 100 32 15 0 216 0 201 32 201
4200 3 11 9 8 8 100 32 15 0 216 32 201 32 216
4200 3 12 13 14 8 100 32 15 32 216 32 201 0 201
4200 3 12 14 15 8 100 32 15 32 216 0 201 0 216
4200 3 15 14 13 8 100 32 15 0 216 0 201 32 201
4200 3 15 13 12 8 100 32 15 0 216 32 201 32 216
4200 3 16 17 18 8 100 32 15 32 216 32 201 0 201
4200 3 16 18 19 8 100 32 15 32 216 0 201 0 216
4200 3 19 18 17 8 100 32 15 0 216 0 201 32 201
4200 3 19 17 16 8 100 32 15 0 216 32 201 32 216
4200 3 20 21 22 8 100 32 15 32 216 32 201 0 201
4200 3 20 22 23 8 100 32 15 32 216 0 201 0 216
4200 3 23 22 21 8 100 32 15 0 216 0 201 32 201
4200 3 23 21 20 8 100 32 15 0 216 32 201 32 216

View File

@ -29,27 +29,27 @@ POINTS 24
-28 -5 9
-28 6 5
POLYGONS 24
4200 3 0 1 2 8 1 32 15 32 216 32 201 0 201
4200 3 0 2 3 8 1 32 15 32 216 0 201 0 216
4200 3 3 2 1 8 1 32 15 0 216 0 201 32 201
4200 3 3 1 0 8 1 32 15 0 216 32 201 32 216
4200 3 4 5 6 8 1 32 15 32 216 32 201 0 201
4200 3 4 6 7 8 1 32 15 32 216 0 201 0 216
4200 3 7 6 5 8 1 32 15 0 216 0 201 32 201
4200 3 7 5 4 8 1 32 15 0 216 32 201 32 216
4200 3 8 9 10 8 1 32 15 32 216 32 201 0 201
4200 3 8 10 11 8 1 32 15 32 216 0 201 0 216
4200 3 11 10 9 8 1 32 15 0 216 0 201 32 201
4200 3 11 9 8 8 1 32 15 0 216 32 201 32 216
4200 3 12 13 14 8 1 32 15 32 216 32 201 0 201
4200 3 12 14 15 8 1 32 15 32 216 0 201 0 216
4200 3 15 14 13 8 1 32 15 0 216 0 201 32 201
4200 3 15 13 12 8 1 32 15 0 216 32 201 32 216
4200 3 16 17 18 8 1 32 15 32 216 32 201 0 201
4200 3 16 18 19 8 1 32 15 32 216 0 201 0 216
4200 3 19 18 17 8 1 32 15 0 216 0 201 32 201
4200 3 19 17 16 8 1 32 15 0 216 32 201 32 216
4200 3 20 21 22 8 1 32 15 32 216 32 201 0 201
4200 3 20 22 23 8 1 32 15 32 216 0 201 0 216
4200 3 23 22 21 8 1 32 15 0 216 0 201 32 201
4200 3 23 21 20 8 1 32 15 0 216 32 201 32 216
4200 3 0 1 2 8 100 32 15 32 216 32 201 0 201
4200 3 0 2 3 8 100 32 15 32 216 0 201 0 216
4200 3 3 2 1 8 100 32 15 0 216 0 201 32 201
4200 3 3 1 0 8 100 32 15 0 216 32 201 32 216
4200 3 4 5 6 8 100 32 15 32 216 32 201 0 201
4200 3 4 6 7 8 100 32 15 32 216 0 201 0 216
4200 3 7 6 5 8 100 32 15 0 216 0 201 32 201
4200 3 7 5 4 8 100 32 15 0 216 32 201 32 216
4200 3 8 9 10 8 100 32 15 32 216 32 201 0 201
4200 3 8 10 11 8 100 32 15 32 216 0 201 0 216
4200 3 11 10 9 8 100 32 15 0 216 0 201 32 201
4200 3 11 9 8 8 100 32 15 0 216 32 201 32 216
4200 3 12 13 14 8 100 32 15 32 216 32 201 0 201
4200 3 12 14 15 8 100 32 15 32 216 0 201 0 216
4200 3 15 14 13 8 100 32 15 0 216 0 201 32 201
4200 3 15 13 12 8 100 32 15 0 216 32 201 32 216
4200 3 16 17 18 8 100 32 15 32 216 32 201 0 201
4200 3 16 18 19 8 100 32 15 32 216 0 201 0 216
4200 3 19 18 17 8 100 32 15 0 216 0 201 32 201
4200 3 19 17 16 8 100 32 15 0 216 32 201 32 216
4200 3 20 21 22 8 100 32 15 32 216 32 201 0 201
4200 3 20 22 23 8 100 32 15 32 216 0 201 0 216
4200 3 23 22 21 8 100 32 15 0 216 0 201 32 201
4200 3 23 21 20 8 100 32 15 0 216 32 201 32 216

View File

@ -45,43 +45,43 @@ POINTS 40
11 31 72
11 31 58
POLYGONS 40
4200 3 0 1 2 8 1 32 15 32 216 32 201 0 201
4200 3 0 2 3 8 1 32 15 32 216 0 201 0 216
4200 3 3 2 1 8 1 32 15 0 216 0 201 32 201
4200 3 3 1 0 8 1 32 15 0 216 32 201 32 216
4200 3 4 5 6 8 1 32 15 32 216 32 201 0 201
4200 3 4 6 7 8 1 32 15 32 216 0 201 0 216
4200 3 7 6 5 8 1 32 15 0 216 0 201 32 201
4200 3 7 5 4 8 1 32 15 0 216 32 201 32 216
4200 3 8 9 10 8 1 32 15 32 216 32 201 0 201
4200 3 8 10 11 8 1 32 15 32 216 0 201 0 216
4200 3 11 10 9 8 1 32 15 0 216 0 201 32 201
4200 3 11 9 8 8 1 32 15 0 216 32 201 32 216
4200 3 12 13 14 8 1 32 15 32 216 32 201 0 201
4200 3 12 14 15 8 1 32 15 32 216 0 201 0 216
4200 3 15 14 13 8 1 32 15 0 216 0 201 32 201
4200 3 15 13 12 8 1 32 15 0 216 32 201 32 216
4200 3 16 17 18 8 1 32 15 32 216 32 201 0 201
4200 3 16 18 19 8 1 32 15 32 216 0 201 0 216
4200 3 19 18 17 8 1 32 15 0 216 0 201 32 201
4200 3 19 17 16 8 1 32 15 0 216 32 201 32 216
4200 3 20 21 22 8 1 32 15 32 216 32 201 0 201
4200 3 20 22 23 8 1 32 15 32 216 0 201 0 216
4200 3 23 22 21 8 1 32 15 0 216 0 201 32 201
4200 3 23 21 20 8 1 32 15 0 216 32 201 32 216
4200 3 24 25 26 8 1 32 15 32 216 32 201 0 201
4200 3 24 26 27 8 1 32 15 32 216 0 201 0 216
4200 3 27 26 25 8 1 32 15 0 216 0 201 32 201
4200 3 27 25 24 8 1 32 15 0 216 32 201 32 216
4200 3 28 29 30 8 1 32 15 32 216 32 201 0 201
4200 3 28 30 31 8 1 32 15 32 216 0 201 0 216
4200 3 31 30 29 8 1 32 15 0 216 0 201 32 201
4200 3 31 29 28 8 1 32 15 0 216 32 201 32 216
4200 3 32 33 34 8 1 32 15 32 216 32 201 0 201
4200 3 32 34 35 8 1 32 15 32 216 0 201 0 216
4200 3 35 34 33 8 1 32 15 0 216 0 201 32 201
4200 3 35 33 32 8 1 32 15 0 216 32 201 32 216
4200 3 36 37 38 8 1 32 15 32 216 32 201 0 201
4200 3 36 38 39 8 1 32 15 32 216 0 201 0 216
4200 3 39 38 37 8 1 32 15 0 216 0 201 32 201
4200 3 39 37 36 8 1 32 15 0 216 32 201 32 216
4200 3 0 1 2 8 100 32 15 32 216 32 201 0 201
4200 3 0 2 3 8 100 32 15 32 216 0 201 0 216
4200 3 3 2 1 8 100 32 15 0 216 0 201 32 201
4200 3 3 1 0 8 100 32 15 0 216 32 201 32 216
4200 3 4 5 6 8 100 32 15 32 216 32 201 0 201
4200 3 4 6 7 8 100 32 15 32 216 0 201 0 216
4200 3 7 6 5 8 100 32 15 0 216 0 201 32 201
4200 3 7 5 4 8 100 32 15 0 216 32 201 32 216
4200 3 8 9 10 8 100 32 15 32 216 32 201 0 201
4200 3 8 10 11 8 100 32 15 32 216 0 201 0 216
4200 3 11 10 9 8 100 32 15 0 216 0 201 32 201
4200 3 11 9 8 8 100 32 15 0 216 32 201 32 216
4200 3 12 13 14 8 100 32 15 32 216 32 201 0 201
4200 3 12 14 15 8 100 32 15 32 216 0 201 0 216
4200 3 15 14 13 8 100 32 15 0 216 0 201 32 201
4200 3 15 13 12 8 100 32 15 0 216 32 201 32 216
4200 3 16 17 18 8 100 32 15 32 216 32 201 0 201
4200 3 16 18 19 8 100 32 15 32 216 0 201 0 216
4200 3 19 18 17 8 100 32 15 0 216 0 201 32 201
4200 3 19 17 16 8 100 32 15 0 216 32 201 32 216
4200 3 20 21 22 8 100 32 15 32 216 32 201 0 201
4200 3 20 22 23 8 100 32 15 32 216 0 201 0 216
4200 3 23 22 21 8 100 32 15 0 216 0 201 32 201
4200 3 23 21 20 8 100 32 15 0 216 32 201 32 216
4200 3 24 25 26 8 100 32 15 32 216 32 201 0 201
4200 3 24 26 27 8 100 32 15 32 216 0 201 0 216
4200 3 27 26 25 8 100 32 15 0 216 0 201 32 201
4200 3 27 25 24 8 100 32 15 0 216 32 201 32 216
4200 3 28 29 30 8 100 32 15 32 216 32 201 0 201
4200 3 28 30 31 8 100 32 15 32 216 0 201 0 216
4200 3 31 30 29 8 100 32 15 0 216 0 201 32 201
4200 3 31 29 28 8 100 32 15 0 216 32 201 32 216
4200 3 32 33 34 8 100 32 15 32 216 32 201 0 201
4200 3 32 34 35 8 100 32 15 32 216 0 201 0 216
4200 3 35 34 33 8 100 32 15 0 216 0 201 32 201
4200 3 35 33 32 8 100 32 15 0 216 32 201 32 216
4200 3 36 37 38 8 100 32 15 32 216 32 201 0 201
4200 3 36 38 39 8 100 32 15 32 216 0 201 0 216
4200 3 39 38 37 8 100 32 15 0 216 0 201 32 201
4200 3 39 37 36 8 100 32 15 0 216 32 201 32 216

View File

@ -45,43 +45,43 @@ POINTS 40
55 13 47
58 28 43
POLYGONS 40
4200 3 0 1 2 8 1 32 15 32 216 32 201 0 201
4200 3 0 2 3 8 1 32 15 32 216 0 201 0 216
4200 3 3 2 1 8 1 32 15 0 216 0 201 32 201
4200 3 3 1 0 8 1 32 15 0 216 32 201 32 216
4200 3 4 5 6 8 1 32 15 32 216 32 201 0 201
4200 3 4 6 7 8 1 32 15 32 216 0 201 0 216
4200 3 7 6 5 8 1 32 15 0 216 0 201 32 201
4200 3 7 5 4 8 1 32 15 0 216 32 201 32 216
4200 3 8 9 10 8 1 32 15 32 216 32 201 0 201
4200 3 8 10 11 8 1 32 15 32 216 0 201 0 216
4200 3 11 10 9 8 1 32 15 0 216 0 201 32 201
4200 3 11 9 8 8 1 32 15 0 216 32 201 32 216
4200 3 12 13 14 8 1 32 15 32 216 32 201 0 201
4200 3 12 14 15 8 1 32 15 32 216 0 201 0 216
4200 3 15 14 13 8 1 32 15 0 216 0 201 32 201
4200 3 15 13 12 8 1 32 15 0 216 32 201 32 216
4200 3 16 17 18 8 1 32 15 32 216 32 201 0 201
4200 3 16 18 19 8 1 32 15 32 216 0 201 0 216
4200 3 19 18 17 8 1 32 15 0 216 0 201 32 201
4200 3 19 17 16 8 1 32 15 0 216 32 201 32 216
4200 3 20 21 22 8 1 32 15 32 216 32 201 0 201
4200 3 20 22 23 8 1 32 15 32 216 0 201 0 216
4200 3 23 22 21 8 1 32 15 0 216 0 201 32 201
4200 3 23 21 20 8 1 32 15 0 216 32 201 32 216
4200 3 24 25 26 8 1 32 15 32 216 32 201 0 201
4200 3 24 26 27 8 1 32 15 32 216 0 201 0 216
4200 3 27 26 25 8 1 32 15 0 216 0 201 32 201
4200 3 27 25 24 8 1 32 15 0 216 32 201 32 216
4200 3 28 29 30 8 1 32 15 32 216 32 201 0 201
4200 3 28 30 31 8 1 32 15 32 216 0 201 0 216
4200 3 31 30 29 8 1 32 15 0 216 0 201 32 201
4200 3 31 29 28 8 1 32 15 0 216 32 201 32 216
4200 3 32 33 34 8 1 32 15 32 216 32 201 0 201
4200 3 32 34 35 8 1 32 15 32 216 0 201 0 216
4200 3 35 34 33 8 1 32 15 0 216 0 201 32 201
4200 3 35 33 32 8 1 32 15 0 216 32 201 32 216
4200 3 36 37 38 8 1 32 15 32 216 32 201 0 201
4200 3 36 38 39 8 1 32 15 32 216 0 201 0 216
4200 3 39 38 37 8 1 32 15 0 216 0 201 32 201
4200 3 39 37 36 8 1 32 15 0 216 32 201 32 216
4200 3 0 1 2 8 100 32 15 32 216 32 201 0 201
4200 3 0 2 3 8 100 32 15 32 216 0 201 0 216
4200 3 3 2 1 8 100 32 15 0 216 0 201 32 201
4200 3 3 1 0 8 100 32 15 0 216 32 201 32 216
4200 3 4 5 6 8 100 32 15 32 216 32 201 0 201
4200 3 4 6 7 8 100 32 15 32 216 0 201 0 216
4200 3 7 6 5 8 100 32 15 0 216 0 201 32 201
4200 3 7 5 4 8 100 32 15 0 216 32 201 32 216
4200 3 8 9 10 8 100 32 15 32 216 32 201 0 201
4200 3 8 10 11 8 100 32 15 32 216 0 201 0 216
4200 3 11 10 9 8 100 32 15 0 216 0 201 32 201
4200 3 11 9 8 8 100 32 15 0 216 32 201 32 216
4200 3 12 13 14 8 100 32 15 32 216 32 201 0 201
4200 3 12 14 15 8 100 32 15 32 216 0 201 0 216
4200 3 15 14 13 8 100 32 15 0 216 0 201 32 201
4200 3 15 13 12 8 100 32 15 0 216 32 201 32 216
4200 3 16 17 18 8 100 32 15 32 216 32 201 0 201
4200 3 16 18 19 8 100 32 15 32 216 0 201 0 216
4200 3 19 18 17 8 100 32 15 0 216 0 201 32 201
4200 3 19 17 16 8 100 32 15 0 216 32 201 32 216
4200 3 20 21 22 8 100 32 15 32 216 32 201 0 201
4200 3 20 22 23 8 100 32 15 32 216 0 201 0 216
4200 3 23 22 21 8 100 32 15 0 216 0 201 32 201
4200 3 23 21 20 8 100 32 15 0 216 32 201 32 216
4200 3 24 25 26 8 100 32 15 32 216 32 201 0 201
4200 3 24 26 27 8 100 32 15 32 216 0 201 0 216
4200 3 27 26 25 8 100 32 15 0 216 0 201 32 201
4200 3 27 25 24 8 100 32 15 0 216 32 201 32 216
4200 3 28 29 30 8 100 32 15 32 216 32 201 0 201
4200 3 28 30 31 8 100 32 15 32 216 0 201 0 216
4200 3 31 30 29 8 100 32 15 0 216 0 201 32 201
4200 3 31 29 28 8 100 32 15 0 216 32 201 32 216
4200 3 32 33 34 8 100 32 15 32 216 32 201 0 201
4200 3 32 34 35 8 100 32 15 32 216 0 201 0 216
4200 3 35 34 33 8 100 32 15 0 216 0 201 32 201
4200 3 35 33 32 8 100 32 15 0 216 32 201 32 216
4200 3 36 37 38 8 100 32 15 32 216 32 201 0 201
4200 3 36 38 39 8 100 32 15 32 216 0 201 0 216
4200 3 39 38 37 8 100 32 15 0 216 0 201 32 201
4200 3 39 37 36 8 100 32 15 0 216 32 201 32 216

1
doc/gl/extractGlEnums.sh Executable file
View File

@ -0,0 +1 @@
grep -o -I -r -P "[(,]\s*GL_[A-Z_0-9]+" src lib | sed "/~/d" | sed "/betawidget/d"

1
doc/gl/extractGlFunctions.sh Executable file
View File

@ -0,0 +1 @@
grep -P '[^a-zA-Z0-9]gl[A-Z][a-zA-Z0-9]+\(' -o -r src lib | sed "/~/d" | sed "s/:\//:\ /"| sed "s/:(/: /" | sed "s/:)/: /" | sed "s/:\!/: /" | sed "s/:_/: /" | sed "/betawidget/d"

BIN
doc/gl/wzgl.ods Normal file

Binary file not shown.

View File

@ -121,43 +121,65 @@ static bool _imd_load_polys( const char **ppFileData, iIMDShape *s, int pieVersi
poly->normal = pie_SurfaceNormal3fv(p0, p1, p2);
}
if (poly->flags & iV_IMD_TEXANIM)
{
int nFrames, pbRate, tWidth, tHeight;
// even the psx needs to skip the data
if (sscanf(pFileData, "%d %d %d %d%n", &nFrames, &pbRate, &tWidth, &tHeight, &cnt) != 4)
{
debug(LOG_ERROR, "(_load_polys) [poly %u] error reading texanim data", i);
return false;
}
pFileData += cnt;
ASSERT(tWidth > 0, "%s: texture width = %d", GetLastResourceFilename(), tWidth);
ASSERT(tHeight > 0, "%s: texture height = %d (width=%d)", GetLastResourceFilename(), tHeight, tWidth);
/* Must have same number of frames and same playback rate for all polygons */
s->numFrames = nFrames;
s->animInterval = pbRate;
poly->texAnim.x = tWidth / OLD_TEXTURE_SIZE_FIX;
poly->texAnim.y = tHeight / OLD_TEXTURE_SIZE_FIX;
}
else
{
poly->texAnim.x = 0;
poly->texAnim.y = 0;
}
// PC texture coord routine
// texture coord routine
if (poly->flags & iV_IMD_TEX)
{
int nFrames, framesPerLine, frame;
int nFrames, framesPerLine, frame, pbRate;
float tWidth, tHeight;
if (poly->flags & iV_IMD_TEXANIM)
{
if (sscanf(pFileData, "%d %d %f %f%n", &nFrames, &pbRate, &tWidth, &tHeight, &cnt) != 4)
{
debug(LOG_ERROR, "(_load_polys) [poly %u] error reading texanim data", i);
return false;
}
pFileData += cnt;
ASSERT(tWidth > 0.0001f, "%s: texture width = %f", GetLastResourceFilename(), tWidth);
ASSERT(tHeight > 0.f, "%s: texture height = %f (width=%f)", GetLastResourceFilename(), tHeight, tWidth);
ASSERT(nFrames > 1, "%s: animation frames = %d", GetLastResourceFilename(), nFrames);
ASSERT(pbRate > 0, "%s: animation interval = %d ms", GetLastResourceFilename(), pbRate);
/* Must have same number of frames and same playback rate for all polygons */
if (s->numFrames == 0)
{
s->numFrames = nFrames;
s->animInterval = pbRate;
}
else
{
ASSERT(s->numFrames == nFrames,
"%s: varying number of frames within one PIE level: %d != %d",
GetLastResourceFilename(), nFrames, s->numFrames);
ASSERT(s->animInterval == pbRate,
"%s: varying animation intervals within one PIE level: %d != %d",
GetLastResourceFilename(), pbRate, s->animInterval);
}
poly->texAnim.x = tWidth;
poly->texAnim.y = tHeight;
if (pieVersion != PIE_FLOAT_VER)
{
poly->texAnim.x /= OLD_TEXTURE_SIZE_FIX;
poly->texAnim.y /= OLD_TEXTURE_SIZE_FIX;
}
framesPerLine = 1/poly->texAnim.x;
}
else
{
nFrames = 1;
framesPerLine = 1;
pbRate = 1;
tWidth = 0.f;
tHeight = 0.f;
poly->texAnim.x = 0;
poly->texAnim.y = 0;
}
nFrames = MAX(1, s->numFrames);
poly->texCoord = (Vector2f *)malloc(sizeof(*poly->texCoord) * nFrames * poly->npnts);
ASSERT_OR_RETURN(false, poly->texCoord, "Out of memory allocating texture coordinates");
framesPerLine = OLD_TEXTURE_SIZE_FIX / (poly->texAnim.x * OLD_TEXTURE_SIZE_FIX);
for (j = 0; j < poly->npnts; j++)
{
float VertexU, VertexV;
@ -177,12 +199,12 @@ static bool _imd_load_polys( const char **ppFileData, iIMDShape *s, int pieVersi
for (frame = 0; frame < nFrames; frame++)
{
const int uFrame = (frame % framesPerLine) * (poly->texAnim.x * OLD_TEXTURE_SIZE_FIX);
const int vFrame = (frame / framesPerLine) * (poly->texAnim.y * OLD_TEXTURE_SIZE_FIX);
const float uFrame = (frame % framesPerLine) * poly->texAnim.x;
const float vFrame = (frame / framesPerLine) * poly->texAnim.y;
Vector2f *c = &poly->texCoord[frame * poly->npnts + j];
c->x = VertexU + uFrame / OLD_TEXTURE_SIZE_FIX;
c->y = VertexV + vFrame / OLD_TEXTURE_SIZE_FIX;
c->x = VertexU + uFrame;
c->y = VertexV + vFrame;
}
}
}

View File

@ -459,10 +459,6 @@ void pie_Draw3DShape(iIMDShape *shape, int frame, int team, PIELIGHT colour, int
ASSERT(frame >= 0, "Negative frame %d", frame);
ASSERT(team >= 0, "Negative team %d", team);
if (frame == 0)
{
frame = team;
}
if (drawing_interface || !shadows)
{

View File

@ -119,7 +119,7 @@ bool screenInitialise()
line += word;
}
debug(LOG_3D, "OpenGL Extensions:%s", line.c_str());
debug(LOG_3D, "Supported OpenGL extensions:");
debug(LOG_3D, "Notable OpenGL features:");
debug(LOG_3D, " * OpenGL 1.2 %s supported!", GLEW_VERSION_1_2 ? "is" : "is NOT");
debug(LOG_3D, " * OpenGL 1.3 %s supported!", GLEW_VERSION_1_3 ? "is" : "is NOT");
debug(LOG_3D, " * OpenGL 1.4 %s supported!", GLEW_VERSION_1_4 ? "is" : "is NOT");
@ -143,8 +143,11 @@ bool screenInitialise()
screenWidth = MAX(screenWidth, 640);
screenHeight = MAX(screenHeight, 480);
if (GLEW_VERSION_2_0 && !opengl_fallback_mode)
std::pair<int, int> glslVersion(0, 0);
if (GLEW_ARB_shading_language_100 && GLEW_ARB_shader_objects)
{
sscanf((char const *)glGetString(GL_SHADING_LANGUAGE_VERSION), "%d.%d", &glslVersion.first, &glslVersion.second);
/* Dump information about OpenGL 2.0+ implementation to the console and the dump file */
GLint glMaxTIUs, glMaxTCs, glMaxTIUAs, glmaxSamples, glmaxSamplesbuf;
@ -162,37 +165,29 @@ bool screenInitialise()
debug(LOG_3D, " * (current) Max Sample buffer is %d.", (int) glmaxSamplesbuf);
glGetIntegerv(GL_SAMPLES, &glmaxSamples);
debug(LOG_3D, " * (current) Max Sample level is %d.", (int) glmaxSamples);
}
bool canRunAtAll = GLEW_VERSION_1_2 && GLEW_ARB_vertex_buffer_object && GLEW_ARB_texture_env_crossbar;
bool canRunShaders = canRunAtAll && glslVersion >= std::make_pair(1, 20); // glGetString(GL_SHADING_LANGUAGE_VERSION) >= "1.20"
if (canRunShaders && !opengl_fallback_mode)
{
if (pie_LoadShaders())
{
pie_SetShaderAvailability(true);
}
}
else if (GLEW_VERSION_1_5)
else if (canRunAtAll)
{
debug(LOG_POPUP, _("OpenGL 2.0 is not supported by your system. Some things may look wrong. Please upgrade your graphics driver/hardware, if possible."));
// corner cases: vbo(core 1.5 or ARB ext), texture crossbar (core 1.4 or ARB ext)
debug(LOG_POPUP, _("OpenGL GLSL shader version 1.20 is not supported by your system. Some things may look wrong. Please upgrade your graphics driver/hardware, if possible."));
}
else // less than 1.5
else
{
// Check if VBO extension available for hacks
if (GLEW_VERSION_1_4 && GLEW_ARB_vertex_buffer_object)
{
debug(LOG_POPUP, _("OpenGL 1.5/2.0 is not supported by your system. Some things may look wrong. Please upgrade your graphics driver/hardware, if possible."));
// screen_EnableVBO should be called later, so nothing (quesoGLC) will call glewInit twice and flush our tweaks into void
}
else if (GLEW_VERSION_1_2 && GLEW_ARB_vertex_buffer_object && GLEW_ARB_texture_env_crossbar)
{
debug(LOG_POPUP, _("OpenGL 1.4 + VBO extension is not supported by your system. Some things may look wrong. Please upgrade your graphics driver/hardware, if possible."));
// screen_EnableVBO should be called later, so nothing (quesoGLC) will call glewInit twice and flush our tweaks into void
}
else
{
// We wite this file in hopes that people will upload the information in it to us.
writeGameInfo("WZdebuginfo.txt");
debug(LOG_FATAL, _("OpenGL 1.2 + VBO extension + TEC extension is not supported by your system. The game requires this. Please upgrade your graphics drivers/hardware, if possible."));
exit(1);
}
// We write this file in hopes that people will upload the information in it to us.
writeGameInfo("WZdebuginfo.txt");
debug(LOG_FATAL, _("OpenGL 1.2 + VBO + TEC is not supported by your system. The game requires this. Please upgrade your graphics drivers/hardware, if possible."));
exit(1);
}
glClearColor(0.0f, 0.0f, 0.0f, 1.0f);
@ -209,12 +204,19 @@ void screenShutDown(void)
}
// Make OpenGL's VBO functions available under the core names for drivers that support OpenGL 1.4 only but have the VBO extension
void screen_EnableVBO()
void screen_EnableMissingFunctions()
{
// no need if there is OpenGL 1.5 available
if (!GLEW_VERSION_1_3 && GLEW_ARB_multitexture)
{
debug(LOG_WARNING, "Pre-OpenGL 1.3: Fixing ARB_multitexture extension function names.");
__glewActiveTexture = __glewActiveTextureARB;
__glewMultiTexCoord2fv = __glewMultiTexCoord2fvARB;
}
if (!GLEW_VERSION_1_5 && GLEW_ARB_vertex_buffer_object)
{
debug(LOG_WARNING, "OpenGL 1.4+: Using VBO extension functions under the core names.");
debug(LOG_WARNING, "Pre-OpenGL 1.5: Fixing ARB_vertex_buffer_object extension function names.");
__glewBindBuffer = __glewBindBufferARB;
__glewBufferData = __glewBufferDataARB;
@ -228,6 +230,27 @@ void screen_EnableVBO()
__glewMapBuffer = __glewMapBufferARB;
__glewUnmapBuffer = __glewUnmapBufferARB;
}
if (!GLEW_VERSION_2_0 && GLEW_ARB_shader_objects)
{
debug(LOG_WARNING, "Pre-OpenGL 2.0: Fixing ARB_shader_objects extension function names.");
__glewGetUniformLocation = __glewGetUniformLocationARB;
__glewAttachShader = __glewAttachObjectARB;
__glewCompileShader = __glewCompileShaderARB;
__glewCreateProgram = __glewCreateProgramObjectARB;
__glewCreateShader = __glewCreateShaderObjectARB;
__glewGetProgramInfoLog = __glewGetInfoLogARB;
__glewGetShaderInfoLog = __glewGetInfoLogARB; // Same as previous.
__glewGetProgramiv = __glewGetObjectParameterivARB;
__glewUseProgram = __glewUseProgramObjectARB;
__glewGetShaderiv = __glewGetObjectParameterivARB;
__glewLinkProgram = __glewLinkProgramARB;
__glewShaderSource = __glewShaderSourceARB;
__glewUniform1f = __glewUniform1fARB;
__glewUniform1i = __glewUniform1iARB;
__glewUniform4fv = __glewUniform4fvARB;
}
}
void screen_SetBackDropFromFile(const char* filename)

View File

@ -63,8 +63,8 @@ extern void screenDoDumpToDiskIfRequired(void);
void screen_enableMapPreview(char *name, int width, int height, Vector2i *playerpositions);
void screen_disableMapPreview(void);
bool screen_getMapPreview(void);
void screen_EnableMissingFunctions();
void screen_EnableVBO();
struct OPENGL_DATA
{
char vendor[256];

View File

@ -907,6 +907,7 @@ int checkSockets(const SocketSet* set, unsigned int timeout)
*/
ssize_t readAll(Socket* sock, void* buf, size_t size, unsigned int timeout)
{
ASSERT_OR_RETURN( SOCKET_ERROR, sock, "We don't have a valid socket!");
ASSERT(!sock->isCompressed, "readAll on compressed sockets not implemented.");
const SocketSet set = {std::vector<Socket *>(1, sock)};

View File

@ -626,7 +626,7 @@ static void displayCompObj(DROID *psDroid, bool bButton)
if ( psJet != NULL )
{
pie_Draw3DShape(psJet, getModularScaledGraphicsTime(100, psJet->numFrames), colour, brightness, pie_ADDITIVE, 200);
pie_Draw3DShape(psJet, getModularScaledGraphicsTime(psJet->animInterval, psJet->numFrames), colour, brightness, pie_ADDITIVE, 200);
}
}
}
@ -902,7 +902,7 @@ static void displayCompObj(DROID *psDroid, bool bButton)
pie_MatRotY(-player.r.y);
pie_MatRotX(-player.r.x);
pie_Draw3DShape(psShape, getModularScaledGraphicsTime(100, psShape->numFrames), 0, brightness, pie_ADDITIVE, 140);
pie_Draw3DShape(psShape, getModularScaledGraphicsTime(psShape->animInterval, psShape->numFrames), 0, brightness, pie_ADDITIVE, 140);
pie_MatRotX(player.r.x);
pie_MatRotY(player.r.y);

View File

@ -309,7 +309,6 @@ static std::vector<Blueprint> blueprints;
#define TARGET_TO_SENSOR_TIME ((4*(GAME_TICKS_PER_SEC))/5)
#define DEST_TARGET_TIME (GAME_TICKS_PER_SEC/4)
#define STRUCTURE_ANIM_RATE 4
/// The distance the selection box will pulse
#define BOX_PULSE_SIZE 10
@ -2147,7 +2146,7 @@ void renderProximityMsg(PROXIMITY_DISPLAY *psProxDisp)
pie_MatRotY(-player.r.y);
pie_MatRotX(-player.r.x);
pie_Draw3DShape(proxImd, getModularScaledGraphicsTime(1000, 4), 0, WZCOL_WHITE, pie_ADDITIVE, 192);
pie_Draw3DShape(proxImd, getModularScaledGraphicsTime(proxImd->animInterval, proxImd->numFrames), 0, WZCOL_WHITE, pie_ADDITIVE, 192);
//get the screen coords for determining when clicked on
calcFlagPosScreenCoords(&x, &y, &r);
@ -2224,11 +2223,10 @@ void renderStructure(STRUCTURE *psStructure)
colour = getPlayerColour(psStructure->player);
animFrame = 0;
/* Power stations and factories have pulsing lights. Hack for fortresses, since they need team colour. */
if (!defensive && psStructure->sDisplay.imd->numFrames > 0 && !(bMultiPlayer && psStructure->pStructureType->type == REF_BLASTDOOR))
if (strImd->numFrames > 0)
{
// Calculate an animation frame
animFrame = getModularScaledGraphicsTime(STRUCTURE_ANIM_RATE*GAME_TICKS_PER_SEC, STRUCTURE_ANIM_RATE);
animFrame = getModularScaledGraphicsTime(strImd->animInterval, strImd->numFrames);
}
// -------------------------------------------------------------------------------
@ -2429,7 +2427,7 @@ void renderStructure(STRUCTURE *psStructure)
pie_MatRotY(-player.r.y);
pie_MatRotX(-player.r.x);
pie_Draw3DShape(pRepImd, getModularScaledGraphicsTime(100, pRepImd->numFrames), colour, buildingBrightness, pie_ADDITIVE, 192);
pie_Draw3DShape(pRepImd, getModularScaledGraphicsTime(pRepImd->animInterval, pRepImd->numFrames), colour, buildingBrightness, pie_ADDITIVE, 192);
pie_MatRotX(player.r.x);
pie_MatRotY(player.r.y);
@ -2541,7 +2539,7 @@ void renderStructure(STRUCTURE *psStructure)
pie_TRANSLATE(psStructure->sDisplay.imd->connectors->x, psStructure->sDisplay.imd->connectors->z,
psStructure->sDisplay.imd->connectors->y);
lImd = getImdFromIndex(MI_LANDING);
pie_Draw3DShape(lImd, getModularScaledGraphicsTime(1024, lImd->numFrames), colour, buildingBrightness, 0, 0);
pie_Draw3DShape(lImd, getModularScaledGraphicsTime(lImd->animInterval, lImd->numFrames), colour, buildingBrightness, 0, 0);
pie_MatEnd();
}
}

View File

@ -250,6 +250,11 @@ static void startSinglePlayerMenu(void)
addSideText (FRONTEND_SIDETEXT ,FRONTEND_SIDEX,FRONTEND_SIDEY,_("SINGLE PLAYER"));
addMultiBut(psWScreen, FRONTEND_BOTFORM, FRONTEND_QUIT, 10, 10, 30, 29, P_("menu", "Return"), IMAGE_RETURN, IMAGE_RETURN_HI, IMAGE_RETURN_HI);
// show this only when the video sequences are not installed
if (!PHYSFS_exists("sequences/devastation.ogg"))
{
addSmallTextButton(FRONTEND_HYPERLINK, FRONTEND_POS1X, FRONTEND_POS7Y + 12, _("Campaign videos are missing! Get them from http://wz2100.net"), 0);
}
}
static void frontEndNewGame( void )

View File

@ -1207,8 +1207,13 @@ static void intProcessOptions(UDWORD id)
if (id >= IDOPT_PLAYERSTART && id <= IDOPT_PLAYEREND)
{
int oldSelectedPlayer = selectedPlayer;
widgSetButtonState(psWScreen, IDOPT_PLAYERSTART + selectedPlayer, 0);
oldSelectedPlayer = selectedPlayer;
selectedPlayer = id - IDOPT_PLAYERSTART;
NetPlay.players[selectedPlayer].allocated = !NetPlay.players[selectedPlayer].allocated;
NetPlay.players[oldSelectedPlayer].allocated = !NetPlay.players[oldSelectedPlayer].allocated;
// Do not change realSelectedPlayer here, so game doesn't pause.
widgSetButtonState(psWScreen, IDOPT_PLAYERSTART + selectedPlayer, WBUT_LOCK);
}

View File

@ -35,6 +35,7 @@
#include "lib/framework/wzapp.h"
#include "lib/ivis_opengl/piemode.h"
#include "lib/ivis_opengl/piestate.h"
#include "lib/ivis_opengl/screen.h"
#include "lib/ivis_opengl/tex.h"
#include "lib/ivis_opengl/ivi.h"
#include "lib/netplay/netplay.h"
@ -520,6 +521,9 @@ bool systemInitialise(void)
// Initialize the iVis text rendering module
iV_TextInit();
// Fix badly named OpenGL functions. Must be done after iV_TextInit, to avoid the renames being clobbered by an extra glewInit() call.
screen_EnableMissingFunctions();
iV_Reset(); // Reset the IV library.
readAIs();

View File

@ -811,13 +811,16 @@ static QScriptValue js_pursueResearch(QScriptContext *context, QScriptEngine *en
//-- \subsection{getResearch(research)}
//-- Fetch information about a given technology item, given by a string that matches
//-- its definition in "research.txt".
//-- its definition in "research.txt". If not found, returns null.
static QScriptValue js_getResearch(QScriptContext *context, QScriptEngine *engine)
{
int player = engine->globalObject().property("me").toInt32();
QString resName = context->argument(0).toString();
RESEARCH *psResearch = getResearch(resName.toUtf8().constData());
SCRIPT_ASSERT(context, psResearch, "No such research: %s", resName.toUtf8().constData());
if (!psResearch)
{
return QScriptValue::NullValue;
}
return convResearch(psResearch, engine, player);
}

View File

@ -5781,6 +5781,7 @@ void printStructureInfo(STRUCTURE *psStructure)
if not a good combination!*/
bool validTemplateForFactory(DROID_TEMPLATE *psTemplate, STRUCTURE *psFactory, bool complain)
{
ASSERT_OR_RETURN(false, psTemplate, "Invalid template!");
enum code_part level = complain ? LOG_ERROR : LOG_NEVER;
//not in multiPlayer! - AB 26/5/99

View File

@ -711,9 +711,6 @@ bool initTerrain(void)
int decalSize;
int maxSectorSizeIndices, maxSectorSizeVertices;
bool decreasedSize = false;
// call VBO support hack before using it
screen_EnableVBO();
// this information is useful to prevent crashes with buggy opengl implementations
glGetIntegerv(GL_MAX_ELEMENTS_VERTICES, &GLmaxElementsVertices);