earthModel.h 9.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296
  1. #ifndef EARTH_MODEL_H
  2. #define EARTH_MODEL_H
  3. #define EARTH_VERTEX_COUNT 42
  4. const S3L_Unit earthVertices[EARTH_VERTEX_COUNT * 3] = {
  5. 0, -1984, 0, // 0
  6. 0, -1718, 992, // 3
  7. 701, -1718, 701, // 6
  8. 0, 0, 1984, // 9
  9. 1215, -992, 1215, // 12
  10. 0, -992, 1718, // 15
  11. 0, 1718, 992, // 18
  12. 1215, 992, 1215, // 21
  13. 0, 992, 1718, // 24
  14. 1403, 0, 1403, // 27
  15. 0, 1984, 0, // 30
  16. 701, 1718, 701, // 33
  17. 1718, 992, 0, // 36
  18. 992, -1718, 0, // 39
  19. 1984, 0, 0, // 42
  20. 992, 1718, 0, // 45
  21. 1718, -992, 0, // 48
  22. 701, -1718, -701, // 51
  23. 1215, 992, -1215, // 54
  24. 1403, 0, -1403, // 57
  25. 701, 1718, -701, // 60
  26. 1215, -992, -1215, // 63
  27. 0, -1718, -992, // 66
  28. 0, 0, -1984, // 69
  29. 0, 1718, -992, // 72
  30. 0, -992, -1718, // 75
  31. 0, 992, -1718, // 78
  32. -701, -1718, -701, // 81
  33. -1215, 992, -1215, // 84
  34. -1403, 0, -1403, // 87
  35. -701, 1718, -701, // 90
  36. -1215, -992, -1215, // 93
  37. -992, -1718, 0, // 96
  38. -1984, 0, 0, // 99
  39. -992, 1718, 0, // 102
  40. -1718, -992, 0, // 105
  41. -1718, 992, 0, // 108
  42. -1403, 0, 1403, // 111
  43. -701, 1718, 701, // 114
  44. -701, -1718, 701, // 117
  45. -1215, -992, 1215, // 120
  46. -1215, 992, 1215 // 123
  47. }; // earthVertices
  48. #define EARTH_TRIANGLE_COUNT 80
  49. const S3L_Index earthTriangleIndices[EARTH_TRIANGLE_COUNT * 3] = {
  50. 0, 1, 2, // 0
  51. 3, 4, 5, // 3
  52. 6, 7, 8, // 6
  53. 1, 4, 2, // 9
  54. 8, 9, 3, // 12
  55. 6, 10, 11, // 15
  56. 11, 12, 7, // 18
  57. 4, 13, 2, // 21
  58. 7, 14, 9, // 24
  59. 11, 10, 15, // 27
  60. 0, 2, 13, // 30
  61. 9, 16, 4, // 33
  62. 16, 17, 13, // 36
  63. 14, 18, 19, // 39
  64. 15, 10, 20, // 42
  65. 0, 13, 17, // 45
  66. 14, 21, 16, // 48
  67. 15, 18, 12, // 51
  68. 21, 22, 17, // 54
  69. 18, 23, 19, // 57
  70. 20, 10, 24, // 60
  71. 0, 17, 22, // 63
  72. 19, 25, 21, // 66
  73. 20, 26, 18, // 69
  74. 25, 27, 22, // 72
  75. 23, 28, 29, // 75
  76. 24, 10, 30, // 78
  77. 0, 22, 27, // 81
  78. 25, 29, 31, // 84
  79. 24, 28, 26, // 87
  80. 31, 32, 27, // 90
  81. 28, 33, 29, // 93
  82. 30, 10, 34, // 96
  83. 0, 27, 32, // 99
  84. 29, 35, 31, // 102
  85. 30, 36, 28, // 105
  86. 36, 37, 33, // 108
  87. 34, 10, 38, // 111
  88. 0, 32, 39, // 114
  89. 33, 40, 35, // 117
  90. 34, 41, 36, // 120
  91. 35, 39, 32, // 123
  92. 38, 10, 6, // 126
  93. 0, 39, 1, // 129
  94. 37, 5, 40, // 132
  95. 38, 8, 41, // 135
  96. 39, 5, 1, // 138
  97. 41, 3, 37, // 141
  98. 3, 9, 4, // 144
  99. 6, 11, 7, // 147
  100. 1, 5, 4, // 150
  101. 8, 7, 9, // 153
  102. 11, 15, 12, // 156
  103. 4, 16, 13, // 159
  104. 7, 12, 14, // 162
  105. 9, 14, 16, // 165
  106. 16, 21, 17, // 168
  107. 14, 12, 18, // 171
  108. 14, 19, 21, // 174
  109. 15, 20, 18, // 177
  110. 21, 25, 22, // 180
  111. 18, 26, 23, // 183
  112. 19, 23, 25, // 186
  113. 20, 24, 26, // 189
  114. 25, 31, 27, // 192
  115. 23, 26, 28, // 195
  116. 25, 23, 29, // 198
  117. 24, 30, 28, // 201
  118. 31, 35, 32, // 204
  119. 28, 36, 33, // 207
  120. 29, 33, 35, // 210
  121. 30, 34, 36, // 213
  122. 36, 41, 37, // 216
  123. 33, 37, 40, // 219
  124. 34, 38, 41, // 222
  125. 35, 40, 39, // 225
  126. 37, 3, 5, // 228
  127. 38, 6, 8, // 231
  128. 39, 40, 5, // 234
  129. 41, 8, 3 // 237
  130. }; // earthTriangleIndices
  131. #define EARTH_UV_COUNT 61
  132. const S3L_Unit earthUVs[EARTH_UV_COUNT * 2] = {
  133. 352, 501, // 0
  134. 384, 426, // 2
  135. 320, 426, // 4
  136. 384, 256, // 6
  137. 320, 341, // 8
  138. 384, 341, // 10
  139. 384, 85, // 12
  140. 320, 170, // 14
  141. 384, 170, // 16
  142. 320, 256, // 18
  143. 352, 10, // 20
  144. 320, 85, // 22
  145. 256, 170, // 24
  146. 256, 426, // 26
  147. 256, 256, // 28
  148. 288, 10, // 30
  149. 256, 85, // 32
  150. 288, 501, // 34
  151. 256, 341, // 36
  152. 192, 426, // 38
  153. 192, 170, // 40
  154. 192, 256, // 42
  155. 224, 10, // 44
  156. 192, 85, // 46
  157. 224, 501, // 48
  158. 192, 341, // 50
  159. 128, 426, // 52
  160. 128, 256, // 54
  161. 160, 10, // 56
  162. 128, 85, // 58
  163. 160, 501, // 60
  164. 128, 341, // 62
  165. 128, 170, // 64
  166. 64, 426, // 66
  167. 64, 170, // 68
  168. 64, 256, // 70
  169. 96, 10, // 72
  170. 64, 85, // 74
  171. 96, 501, // 76
  172. 64, 341, // 78
  173. 0, 426, // 80
  174. 0, 256, // 82
  175. 32, 10, // 84
  176. 0, 85, // 86
  177. 32, 501, // 88
  178. 0, 341, // 90
  179. 0, 170, // 92
  180. 512, 170, // 94
  181. 448, 256, // 96
  182. 512, 256, // 98
  183. 512, 85, // 100
  184. 480, 10, // 102
  185. 448, 85, // 104
  186. 480, 501, // 106
  187. 512, 426, // 108
  188. 448, 426, // 110
  189. 448, 341, // 112
  190. 512, 341, // 114
  191. 448, 170, // 116
  192. 416, 10, // 118
  193. 416, 501 // 120
  194. }; // earthUVs
  195. #define EARTH_UV_INDEX_COUNT 80
  196. const S3L_Index earthUVIndices[EARTH_UV_INDEX_COUNT * 3] = {
  197. 0, 1, 2, // 0
  198. 3, 4, 5, // 3
  199. 6, 7, 8, // 6
  200. 1, 4, 2, // 9
  201. 8, 9, 3, // 12
  202. 6, 10, 11, // 15
  203. 11, 12, 7, // 18
  204. 4, 13, 2, // 21
  205. 7, 14, 9, // 24
  206. 11, 15, 16, // 27
  207. 17, 2, 13, // 30
  208. 9, 18, 4, // 33
  209. 18, 19, 13, // 36
  210. 14, 20, 21, // 39
  211. 16, 22, 23, // 42
  212. 24, 13, 19, // 45
  213. 14, 25, 18, // 48
  214. 16, 20, 12, // 51
  215. 25, 26, 19, // 54
  216. 20, 27, 21, // 57
  217. 23, 28, 29, // 60
  218. 30, 19, 26, // 63
  219. 21, 31, 25, // 66
  220. 23, 32, 20, // 69
  221. 31, 33, 26, // 72
  222. 27, 34, 35, // 75
  223. 29, 36, 37, // 78
  224. 38, 26, 33, // 81
  225. 31, 35, 39, // 84
  226. 29, 34, 32, // 87
  227. 39, 40, 33, // 90
  228. 34, 41, 35, // 93
  229. 37, 42, 43, // 96
  230. 44, 33, 40, // 99
  231. 35, 45, 39, // 102
  232. 37, 46, 34, // 105
  233. 47, 48, 49, // 108
  234. 50, 51, 52, // 111
  235. 53, 54, 55, // 114
  236. 49, 56, 57, // 117
  237. 50, 58, 47, // 120
  238. 57, 55, 54, // 123
  239. 52, 59, 6, // 126
  240. 60, 55, 1, // 129
  241. 48, 5, 56, // 132
  242. 52, 8, 58, // 135
  243. 55, 5, 1, // 138
  244. 58, 3, 48, // 141
  245. 3, 9, 4, // 144
  246. 6, 11, 7, // 147
  247. 1, 5, 4, // 150
  248. 8, 7, 9, // 153
  249. 11, 16, 12, // 156
  250. 4, 18, 13, // 159
  251. 7, 12, 14, // 162
  252. 9, 14, 18, // 165
  253. 18, 25, 19, // 168
  254. 14, 12, 20, // 171
  255. 14, 21, 25, // 174
  256. 16, 23, 20, // 177
  257. 25, 31, 26, // 180
  258. 20, 32, 27, // 183
  259. 21, 27, 31, // 186
  260. 23, 29, 32, // 189
  261. 31, 39, 33, // 192
  262. 27, 32, 34, // 195
  263. 31, 27, 35, // 198
  264. 29, 37, 34, // 201
  265. 39, 45, 40, // 204
  266. 34, 46, 41, // 207
  267. 35, 41, 45, // 210
  268. 37, 43, 46, // 213
  269. 47, 58, 48, // 216
  270. 49, 48, 56, // 219
  271. 50, 52, 58, // 222
  272. 57, 56, 55, // 225
  273. 48, 3, 5, // 228
  274. 52, 6, 8, // 231
  275. 55, 56, 5, // 234
  276. 58, 8, 3 // 237
  277. }; // earthUVIndices
  278. S3L_Model3D earthModel;
  279. void earthModelInit()
  280. {
  281. S3L_initModel3D(
  282. earthVertices,
  283. EARTH_VERTEX_COUNT,
  284. earthTriangleIndices,
  285. EARTH_TRIANGLE_COUNT,
  286. &earthModel);
  287. }
  288. #endif // guard