Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

1783 lines
48 KiB

  1. #include <windows.h>
  2. #include <gl.h>
  3. #include <math.h>
  4. #include "atlantis.h"
  5. static float N001[3] = {0.019249 ,0.011340 ,-0.999750};
  6. static float N002[3] = {-0.132579 ,0.954547 ,0.266952};
  7. static float N003[3] = {-0.196061 ,0.980392 ,-0.019778};
  8. static float N004[3] = {0.695461 ,0.604704 ,0.388158};
  9. static float N005[3] = {0.870600 ,0.425754 ,0.246557};
  10. static float N006[3] = {-0.881191 ,0.392012 ,0.264251};
  11. static float N007[3] = {0.000000 ,1.000000 ,0.000000};
  12. static float N008[3] = {-0.341437 ,0.887477 ,0.309523};
  13. static float N009[3] = {0.124035 ,-0.992278 ,0.000000};
  14. static float N010[3] = {0.242536 ,0.000000 ,-0.970143};
  15. static float N011[3] = {0.588172 ,0.000000 ,0.808736};
  16. static float N012[3] = {0.929824 ,-0.340623 ,-0.139298};
  17. static float N013[3] = {0.954183 ,0.267108 ,-0.134865};
  18. static float N014[3] = {0.495127 ,0.855436 ,-0.151914};
  19. static float N015[3] = {-0.390199 ,0.906569 ,-0.160867};
  20. static float N016[3] = {-0.923605 ,0.354581 ,-0.145692};
  21. static float N017[3] = {-0.955796 ,-0.260667 ,-0.136036};
  22. static float N018[3] = {-0.501283 ,-0.853462 ,-0.142540};
  23. static float N019[3] = {0.405300 ,-0.901974 ,-0.148913};
  24. static float N020[3] = {0.909913 ,-0.392746 ,-0.133451};
  25. static float N021[3] = {0.936494 ,0.331147 ,-0.115414};
  26. static float N022[3] = {0.600131 ,0.793724 ,-0.099222};
  27. static float N023[3] = {-0.231556 ,0.968361 ,-0.093053};
  28. static float N024[3] = {-0.844369 ,0.525330 ,-0.105211};
  29. static float N025[3] = {-0.982725 ,-0.136329 ,-0.125164};
  30. static float N026[3] = {-0.560844 ,-0.822654 ,-0.093241};
  31. static float N027[3] = {0.263884 ,-0.959981 ,-0.093817};
  32. static float N028[3] = {0.842057 ,-0.525192 ,-0.122938};
  33. static float N029[3] = {0.921620 ,0.367565 ,-0.124546};
  34. static float N030[3] = {0.613927 ,0.784109 ,-0.090918};
  35. static float N031[3] = {-0.448754 ,0.888261 ,-0.098037};
  36. static float N032[3] = {-0.891865 ,0.434376 ,-0.126077};
  37. static float N033[3] = {-0.881447 ,-0.448017 ,-0.149437};
  38. static float N034[3] = {-0.345647 ,-0.922057 ,-0.174183};
  39. static float N035[3] = {0.307998 ,-0.941371 ,-0.137688};
  40. static float N036[3] = {0.806316 ,-0.574647 ,-0.140124};
  41. static float N037[3] = {0.961346 ,0.233646 ,-0.145681};
  42. static float N038[3] = {0.488451 ,0.865586 ,-0.110351};
  43. static float N039[3] = {-0.374290 ,0.921953 ,-0.099553};
  44. static float N040[3] = {-0.928504 ,0.344533 ,-0.138485};
  45. static float N041[3] = {-0.918419 ,-0.371792 ,-0.135189};
  46. static float N042[3] = {-0.520666 ,-0.833704 ,-0.183968};
  47. static float N043[3] = {0.339204 ,-0.920273 ,-0.195036};
  48. static float N044[3] = {0.921475 ,-0.387382 ,-0.028636};
  49. static float N045[3] = {0.842465 ,0.533335 ,-0.076204};
  50. static float N046[3] = {0.380110 ,0.924939 ,0.002073};
  51. static float N047[3] = {-0.276128 ,0.961073 ,-0.009579};
  52. static float N048[3] = {-0.879684 ,0.473001 ,-0.049250};
  53. static float N049[3] = {-0.947184 ,-0.317614 ,-0.044321};
  54. static float N050[3] = {-0.642059 ,-0.764933 ,-0.051363};
  55. static float N051[3] = {0.466794 ,-0.880921 ,-0.077990};
  56. static float N052[3] = {0.898509 ,-0.432277 ,0.076279};
  57. static float N053[3] = {0.938985 ,0.328141 ,0.103109};
  58. static float N054[3] = {0.442420 ,0.895745 ,0.043647};
  59. static float N055[3] = {-0.255163 ,0.966723 ,0.018407};
  60. static float N056[3] = {-0.833769 ,0.540650 ,0.111924};
  61. static float N057[3] = {-0.953653 ,-0.289939 ,0.080507};
  62. static float N058[3] = {-0.672357 ,-0.730524 ,0.119461};
  63. static float N059[3] = {0.522249 ,-0.846652 ,0.102157};
  64. static float N060[3] = {0.885868 ,-0.427631 ,0.179914};
  65. static float N061[3] = {0.000000 ,1.000000 ,0.000000};
  66. static float N062[3] = {0.648942 ,0.743116 ,0.163255};
  67. static float N063[3] = {-0.578967 ,0.807730 ,0.111219};
  68. static float N064[3] = {0.000000 ,1.000000 ,0.000000};
  69. static float N065[3] = {-0.909864 ,-0.352202 ,0.219321};
  70. static float N066[3] = {-0.502541 ,-0.818090 ,0.279610};
  71. static float N067[3] = {0.322919 ,-0.915358 ,0.240504};
  72. static float N068[3] = {0.242536 ,0.000000 ,-0.970143};
  73. static float N069[3] = {0.000000 ,1.000000 ,0.000000};
  74. static float N070[3] = {0.000000 ,1.000000 ,0.000000};
  75. static float N071[3] = {0.000000 ,1.000000 ,0.000000};
  76. static float N072[3] = {0.000000 ,1.000000 ,0.000000};
  77. static float N073[3] = {0.000000 ,1.000000 ,0.000000};
  78. static float N074[3] = {0.000000 ,1.000000 ,0.000000};
  79. static float N075[3] = {0.031220 ,0.999025 ,-0.031220};
  80. static float N076[3] = {0.000000 ,1.000000 ,0.000000};
  81. static float N077[3] = {0.446821 ,0.893642 ,0.041889};
  82. static float N078[3] = {0.863035 ,-0.100980 ,0.494949};
  83. static float N079[3] = {0.585597 ,-0.808215 ,0.062174};
  84. static float N080[3] = {0.000000 ,1.000000 ,0.000000};
  85. static float N081[3] = {1.000000 ,0.000000 ,0.000000};
  86. static float N082[3] = {0.000000 ,1.000000 ,0.000000};
  87. static float N083[3] = {-1.000000 ,0.000000 ,0.000000};
  88. static float N084[3] = {-0.478893 ,0.837129 ,-0.264343};
  89. static float N085[3] = {0.000000 ,1.000000 ,0.000000};
  90. static float N086[3] = {0.763909 ,0.539455 ,-0.354163};
  91. static float N087[3] = {0.446821 ,0.893642 ,0.041889};
  92. static float N088[3] = {0.385134 ,-0.908288 ,0.163352};
  93. static float N089[3] = {-0.605952 ,0.779253 ,-0.159961};
  94. static float N090[3] = {0.000000 ,1.000000 ,0.000000};
  95. static float N091[3] = {0.000000 ,1.000000 ,0.000000};
  96. static float N092[3] = {0.000000 ,1.000000 ,0.000000};
  97. static float N093[3] = {0.000000 ,1.000000 ,0.000000};
  98. static float N094[3] = {1.000000 ,0.000000 ,0.000000};
  99. static float N095[3] = {-1.000000 ,0.000000 ,0.000000};
  100. static float N096[3] = {0.644444 ,-0.621516 ,0.445433};
  101. static float N097[3] = {-0.760896 ,-0.474416 ,0.442681};
  102. static float N098[3] = {0.636888 ,-0.464314 ,0.615456};
  103. static float N099[3] = {-0.710295 ,0.647038 ,0.277168};
  104. static float N100[3] = {0.009604 ,0.993655 ,0.112063};
  105. static float N101[3] = {0.000000 ,1.000000 ,0.000000};
  106. static float N102[3] = {0.000000 ,1.000000 ,0.000000};
  107. static float N103[3] = {0.000000 ,1.000000 ,0.000000};
  108. static float N104[3] = {0.031837 ,0.999285 ,0.020415};
  109. static float N105[3] = {0.031837 ,0.999285 ,0.020415};
  110. static float N106[3] = {0.031837 ,0.999285 ,0.020415};
  111. static float N107[3] = {0.014647 ,0.999648 ,0.022115};
  112. static float N108[3] = {0.014647 ,0.999648 ,0.022115};
  113. static float N109[3] = {0.014647 ,0.999648 ,0.022115};
  114. static float N110[3] = {-0.985141 ,0.039475 ,0.167149};
  115. static float N111[3] = {-0.985141 ,0.039475 ,0.167149};
  116. static float N112[3] = {-0.985141 ,0.039475 ,0.167149};
  117. static float N113[3] = {0.000000 ,1.000000 ,0.000000};
  118. static float N114[3] = {0.000000 ,1.000000 ,0.000000};
  119. static float N115[3] = {0.000000 ,1.000000 ,0.000000};
  120. static float N116[3] = {0.000000 ,1.000000 ,0.000000};
  121. static float N117[3] = {0.000000 ,1.000000 ,0.000000};
  122. static float N118[3] = {0.000000 ,1.000000 ,0.000000};
  123. static float N119[3] = {0.000000 ,1.000000 ,0.000000};
  124. static float N120[3] = {0.000000 ,1.000000 ,0.000000};
  125. static float N121[3] = {0.000000 ,1.000000 ,0.000000};
  126. static float iP001[3] = {18.74, 13.19, 3.76};
  127. static float P001[3] = {18.74, 13.19, 3.76};
  128. static float P002[3] = {0.00, 390.42, 10292.57};
  129. static float P003[3] = {55.80, 622.31, 8254.35};
  130. static float P004[3] = {20.80, 247.66, 10652.13};
  131. static float P005[3] = {487.51, 198.05, 9350.78};
  132. static float P006[3] = {-457.61, 199.04, 9353.01};
  133. static float P007[3] = {0.00, 259.00, 10276.27};
  134. static float P008[3] = {-34.67, 247.64, 10663.71};
  135. static float iP009[3] = {97.46, 67.63, 593.82};
  136. static float iP010[3] = {-84.33, 67.63, 588.18};
  137. static float iP011[3] = {118.69, 8.98, -66.91};
  138. static float P009[3] = {97.46, 67.63, 593.82};
  139. static float P010[3] = {-84.33, 67.63, 588.18};
  140. static float P011[3] = {118.69, 8.98, -66.91};
  141. static float iP012[3] = {156.48, -31.95, 924.54};
  142. static float iP013[3] = {162.00, 110.22, 924.54};
  143. static float iP014[3] = {88.16, 221.65, 924.54};
  144. static float iP015[3] = {-65.21, 231.16, 924.54};
  145. static float iP016[3] = {-156.48, 121.97, 924.54};
  146. static float iP017[3] = {-162.00, -23.93, 924.54};
  147. static float iP018[3] = {-88.16, -139.10, 924.54};
  148. static float iP019[3] = {65.21, -148.61, 924.54};
  149. static float iP020[3] = {246.87, -98.73, 1783.04};
  150. static float iP021[3] = {253.17, 127.76, 1783.04};
  151. static float iP022[3] = {132.34, 270.77, 1783.04};
  152. static float iP023[3] = {-97.88, 285.04, 1783.04};
  153. static float iP024[3] = {-222.97, 139.80, 1783.04};
  154. static float iP025[3] = {-225.29, -86.68, 1783.04};
  155. static float iP026[3] = {-108.44, -224.15, 1783.04};
  156. static float iP027[3] = {97.88, -221.56, 1783.04};
  157. static float iP028[3] = {410.55, -200.66, 3213.87};
  158. static float iP029[3] = {432.19, 148.42, 3213.87};
  159. static float iP030[3] = {200.66, 410.55, 3213.87};
  160. static float iP031[3] = {-148.42, 432.19, 3213.87};
  161. static float iP032[3] = {-407.48, 171.88, 3213.87};
  162. static float iP033[3] = {-432.19, -148.42, 3213.87};
  163. static float iP034[3] = {-148.88, -309.74, 3213.87};
  164. static float iP035[3] = {156.38, -320.17, 3213.87};
  165. static float iP036[3] = {523.39, -303.81, 4424.57};
  166. static float iP037[3] = {574.66, 276.84, 4424.57};
  167. static float iP038[3] = {243.05, 492.50, 4424.57};
  168. static float iP039[3] = {-191.23, 520.13, 4424.57};
  169. static float iP040[3] = {-523.39, 304.01, 4424.57};
  170. static float iP041[3] = {-574.66, -231.83, 4424.57};
  171. static float iP042[3] = {-266.95, -578.17, 4424.57};
  172. static float iP043[3] = {211.14, -579.67, 4424.57};
  173. static float iP044[3] = {680.57, -370.27, 5943.46};
  174. static float iP045[3] = {834.01, 363.09, 5943.46};
  175. static float iP046[3] = {371.29, 614.13, 5943.46};
  176. static float iP047[3] = {-291.43, 621.86, 5943.46};
  177. static float iP048[3] = {-784.13, 362.60, 5943.46};
  178. static float iP049[3] = {-743.29, -325.82, 5943.46};
  179. static float iP050[3] = {-383.24, -804.77, 5943.46};
  180. static float iP051[3] = {283.47, -846.09, 5943.46};
  181. static float P012[3] = {156.48, -31.95, 924.54};
  182. static float P013[3] = {162.00, 110.22, 924.54};
  183. static float P014[3] = {88.16, 221.65, 924.54};
  184. static float P015[3] = {-65.21, 231.16, 924.54};
  185. static float P016[3] = {-156.48, 121.97, 924.54};
  186. static float P017[3] = {-162.00, -23.93, 924.54};
  187. static float P018[3] = {-88.16, -139.10, 924.54};
  188. static float P019[3] = {65.21, -148.61, 924.54};
  189. static float P020[3] = {246.87, -98.73, 1783.04};
  190. static float P021[3] = {253.17, 127.76, 1783.04};
  191. static float P022[3] = {132.34, 270.77, 1783.04};
  192. static float P023[3] = {-97.88, 285.04, 1783.04};
  193. static float P024[3] = {-222.97, 139.80, 1783.04};
  194. static float P025[3] = {-225.29, -86.68, 1783.04};
  195. static float P026[3] = {-108.44, -224.15, 1783.04};
  196. static float P027[3] = {97.88, -221.56, 1783.04};
  197. static float P028[3] = {410.55, -200.66, 3213.87};
  198. static float P029[3] = {432.19, 148.42, 3213.87};
  199. static float P030[3] = {200.66, 410.55, 3213.87};
  200. static float P031[3] = {-148.42, 432.19, 3213.87};
  201. static float P032[3] = {-407.48, 171.88, 3213.87};
  202. static float P033[3] = {-432.19, -148.42, 3213.87};
  203. static float P034[3] = {-148.88, -309.74, 3213.87};
  204. static float P035[3] = {156.38, -320.17, 3213.87};
  205. static float P036[3] = {523.39, -303.81, 4424.57};
  206. static float P037[3] = {574.66, 276.84, 4424.57};
  207. static float P038[3] = {243.05, 492.50, 4424.57};
  208. static float P039[3] = {-191.23, 520.13, 4424.57};
  209. static float P040[3] = {-523.39, 304.01, 4424.57};
  210. static float P041[3] = {-574.66, -231.83, 4424.57};
  211. static float P042[3] = {-266.95, -578.17, 4424.57};
  212. static float P043[3] = {211.14, -579.67, 4424.57};
  213. static float P044[3] = {680.57, -370.27, 5943.46};
  214. static float P045[3] = {834.01, 363.09, 5943.46};
  215. static float P046[3] = {371.29, 614.13, 5943.46};
  216. static float P047[3] = {-291.43, 621.86, 5943.46};
  217. static float P048[3] = {-784.13, 362.60, 5943.46};
  218. static float P049[3] = {-743.29, -325.82, 5943.46};
  219. static float P050[3] = {-383.24, -804.77, 5943.46};
  220. static float P051[3] = {283.47, -846.09, 5943.46};
  221. static float P052[3] = {599.09, -332.24, 7902.59};
  222. static float P053[3] = {735.48, 306.26, 7911.92};
  223. static float P054[3] = {321.55, 558.53, 7902.59};
  224. static float P055[3] = {-260.54, 559.84, 7902.59};
  225. static float P056[3] = {-698.66, 320.83, 7902.59};
  226. static float P057[3] = {-643.29, -299.16, 7902.59};
  227. static float P058[3] = {-341.47, -719.30, 7902.59};
  228. static float P059[3] = {252.57, -756.12, 7902.59};
  229. static float P060[3] = {458.39, -265.31, 9355.44};
  230. static float iP061[3] = {353.63, 138.70, 10214.20};
  231. static float P061[3] = {353.63, 138.70, 10214.20};
  232. static float P062[3] = {224.04, 438.98, 9364.77};
  233. static float P063[3] = {-165.71, 441.27, 9355.44};
  234. static float iP064[3] = {-326.40, 162.04, 10209.54};
  235. static float P064[3] = {-326.40, 162.04, 10209.54};
  236. static float P065[3] = {-473.99, -219.71, 9355.44};
  237. static float P066[3] = {-211.97, -479.87, 9355.44};
  238. static float P067[3] = {192.86, -504.03, 9355.44};
  239. static float iP068[3] = {-112.44, 9.25, -64.42};
  240. static float iP069[3] = {1155.63, 0.00, -182.46};
  241. static float iP070[3] = {-1143.13, 0.00, -181.54};
  242. static float iP071[3] = {1424.23, 0.00, -322.09};
  243. static float iP072[3] = {-1368.01, 0.00, -310.38};
  244. static float iP073[3] = {1255.57, 2.31, 114.05};
  245. static float iP074[3] = {-1149.38, 0.00, 117.12};
  246. static float iP075[3] = {718.36, 0.00, 433.36};
  247. static float iP076[3] = {-655.90, 0.00, 433.36};
  248. static float P068[3] = {-112.44, 9.25, -64.42};
  249. static float P069[3] = {1155.63, 0.00, -182.46};
  250. static float P070[3] = {-1143.13, 0.00, -181.54};
  251. static float P071[3] = {1424.23, 0.00, -322.09};
  252. static float P072[3] = {-1368.01, 0.00, -310.38};
  253. static float P073[3] = {1255.57, 2.31, 114.05};
  254. static float P074[3] = {-1149.38, 0.00, 117.12};
  255. static float P075[3] = {718.36, 0.00, 433.36};
  256. static float P076[3] = {-655.90, 0.00, 433.36};
  257. static float P077[3] = {1058.00, -2.66, 7923.51};
  258. static float P078[3] = {-1016.51, -15.47, 7902.87};
  259. static float P079[3] = {-1363.99, -484.50, 7593.38};
  260. static float P080[3] = {1478.09, -861.47, 7098.12};
  261. static float P081[3] = {1338.06, -284.68, 7024.15};
  262. static float P082[3] = {-1545.51, -860.64, 7106.60};
  263. static float P083[3] = {1063.19, -70.46, 7466.60};
  264. static float P084[3] = {-1369.18, -288.11, 7015.34};
  265. static float P085[3] = {1348.44, -482.50, 7591.41};
  266. static float P086[3] = {-1015.45, -96.80, 7474.86};
  267. static float P087[3] = {731.04, 148.38, 7682.58};
  268. static float P088[3] = {-697.03, 151.82, 7668.81};
  269. static float P089[3] = {-686.82, 157.09, 7922.29};
  270. static float P090[3] = {724.73, 147.75, 7931.39};
  271. static float iP091[3] = {0.00, 327.10, 2346.55};
  272. static float iP092[3] = {0.00, 552.28, 2311.31};
  273. static float iP093[3] = {0.00, 721.16, 2166.41};
  274. static float iP094[3] = {0.00, 693.42, 2388.80};
  275. static float iP095[3] = {0.00, 389.44, 2859.97};
  276. static float P091[3] = {0.00, 327.10, 2346.55};
  277. static float P092[3] = {0.00, 552.28, 2311.31};
  278. static float P093[3] = {0.00, 721.16, 2166.41};
  279. static float P094[3] = {0.00, 693.42, 2388.80};
  280. static float P095[3] = {0.00, 389.44, 2859.97};
  281. static float iP096[3] = {222.02, -183.67, 10266.89};
  282. static float iP097[3] = {-128.90, -182.70, 10266.89};
  283. static float iP098[3] = {41.04, 88.31, 10659.36};
  284. static float iP099[3] = {-48.73, 88.30, 10659.36};
  285. static float P096[3] = {222.02, -183.67, 10266.89};
  286. static float P097[3] = {-128.90, -182.70, 10266.89};
  287. static float P098[3] = {41.04, 88.31, 10659.36};
  288. static float P099[3] = {-48.73, 88.30, 10659.36};
  289. static float P100[3] = {0.00, 603.42, 9340.68};
  290. static float P101[3] = {5.70, 567.00, 7862.98};
  291. static float P102[3] = {521.61, 156.61, 9162.34};
  292. static float P103[3] = {83.68, 566.67, 7861.26};
  293. static float P104[3] = {-9.86, 567.62, 7858.65};
  294. static float P105[3] = {31.96, 565.27, 7908.46};
  295. static float P106[3] = {22.75, 568.13, 7782.83};
  296. static float P107[3] = {58.93, 568.42, 7775.94};
  297. static float P108[3] = {55.91, 565.59, 7905.86};
  298. static float P109[3] = {99.21, 566.00, 7858.65};
  299. static float P110[3] = {-498.83, 148.14, 9135.10};
  300. static float P111[3] = {-495.46, 133.24, 9158.48};
  301. static float P112[3] = {-490.82, 146.23, 9182.76};
  302. static float P113[3] = {-489.55, 174.11, 9183.66};
  303. static float P114[3] = {-492.92, 189.00, 9160.28};
  304. static float P115[3] = {-497.56, 176.02, 9136.00};
  305. static float P116[3] = {526.54, 169.68, 9137.70};
  306. static float P117[3] = {523.49, 184.85, 9161.42};
  307. static float P118[3] = {518.56, 171.78, 9186.06};
  308. static float P119[3] = {516.68, 143.53, 9186.98};
  309. static float P120[3] = {519.73, 128.36, 9163.26};
  310. static float P121[3] = {524.66, 141.43, 9138.62};
  311. void Whale001(void)
  312. {
  313. glBegin(GL_POLYGON);
  314. glNormal3fv(N001);
  315. glVertex3fv(P001);
  316. glNormal3fv(N068);
  317. glVertex3fv(P068);
  318. glNormal3fv(N010);
  319. glVertex3fv(P010);
  320. glEnd();
  321. glBegin(GL_POLYGON);
  322. glNormal3fv(N068);
  323. glVertex3fv(P068);
  324. glNormal3fv(N076);
  325. glVertex3fv(P076);
  326. glNormal3fv(N010);
  327. glVertex3fv(P010);
  328. glEnd();
  329. glBegin(GL_POLYGON);
  330. glNormal3fv(N068);
  331. glVertex3fv(P068);
  332. glNormal3fv(N070);
  333. glVertex3fv(P070);
  334. glNormal3fv(N076);
  335. glVertex3fv(P076);
  336. glEnd();
  337. glBegin(GL_POLYGON);
  338. glNormal3fv(N076);
  339. glVertex3fv(P076);
  340. glNormal3fv(N070);
  341. glVertex3fv(P070);
  342. glNormal3fv(N074);
  343. glVertex3fv(P074);
  344. glEnd();
  345. glBegin(GL_POLYGON);
  346. glNormal3fv(N070);
  347. glVertex3fv(P070);
  348. glNormal3fv(N072);
  349. glVertex3fv(P072);
  350. glNormal3fv(N074);
  351. glVertex3fv(P074);
  352. glEnd();
  353. glBegin(GL_POLYGON);
  354. glNormal3fv(N072);
  355. glVertex3fv(P072);
  356. glNormal3fv(N070);
  357. glVertex3fv(P070);
  358. glNormal3fv(N074);
  359. glVertex3fv(P074);
  360. glEnd();
  361. glBegin(GL_POLYGON);
  362. glNormal3fv(N074);
  363. glVertex3fv(P074);
  364. glNormal3fv(N070);
  365. glVertex3fv(P070);
  366. glNormal3fv(N076);
  367. glVertex3fv(P076);
  368. glEnd();
  369. glBegin(GL_POLYGON);
  370. glNormal3fv(N070);
  371. glVertex3fv(P070);
  372. glNormal3fv(N068);
  373. glVertex3fv(P068);
  374. glNormal3fv(N076);
  375. glVertex3fv(P076);
  376. glEnd();
  377. glBegin(GL_POLYGON);
  378. glNormal3fv(N076);
  379. glVertex3fv(P076);
  380. glNormal3fv(N068);
  381. glVertex3fv(P068);
  382. glNormal3fv(N010);
  383. glVertex3fv(P010);
  384. glEnd();
  385. glBegin(GL_POLYGON);
  386. glNormal3fv(N068);
  387. glVertex3fv(P068);
  388. glNormal3fv(N001);
  389. glVertex3fv(P001);
  390. glNormal3fv(N010);
  391. glVertex3fv(P010);
  392. glEnd();
  393. }
  394. void Whale002(void)
  395. {
  396. glBegin(GL_POLYGON);
  397. glNormal3fv(N011);
  398. glVertex3fv(P011);
  399. glNormal3fv(N001);
  400. glVertex3fv(P001);
  401. glNormal3fv(N009);
  402. glVertex3fv(P009);
  403. glEnd();
  404. glBegin(GL_POLYGON);
  405. glNormal3fv(N075);
  406. glVertex3fv(P075);
  407. glNormal3fv(N011);
  408. glVertex3fv(P011);
  409. glNormal3fv(N009);
  410. glVertex3fv(P009);
  411. glEnd();
  412. glBegin(GL_POLYGON);
  413. glNormal3fv(N069);
  414. glVertex3fv(P069);
  415. glNormal3fv(N011);
  416. glVertex3fv(P011);
  417. glNormal3fv(N075);
  418. glVertex3fv(P075);
  419. glEnd();
  420. glBegin(GL_POLYGON);
  421. glNormal3fv(N069);
  422. glVertex3fv(P069);
  423. glNormal3fv(N075);
  424. glVertex3fv(P075);
  425. glNormal3fv(N073);
  426. glVertex3fv(P073);
  427. glEnd();
  428. glBegin(GL_POLYGON);
  429. glNormal3fv(N071);
  430. glVertex3fv(P071);
  431. glNormal3fv(N069);
  432. glVertex3fv(P069);
  433. glNormal3fv(N073);
  434. glVertex3fv(P073);
  435. glEnd();
  436. glBegin(GL_POLYGON);
  437. glNormal3fv(N001);
  438. glVertex3fv(P001);
  439. glNormal3fv(N011);
  440. glVertex3fv(P011);
  441. glNormal3fv(N009);
  442. glVertex3fv(P009);
  443. glEnd();
  444. glBegin(GL_POLYGON);
  445. glNormal3fv(N009);
  446. glVertex3fv(P009);
  447. glNormal3fv(N011);
  448. glVertex3fv(P011);
  449. glNormal3fv(N075);
  450. glVertex3fv(P075);
  451. glEnd();
  452. glBegin(GL_POLYGON);
  453. glNormal3fv(N011);
  454. glVertex3fv(P011);
  455. glNormal3fv(N069);
  456. glVertex3fv(P069);
  457. glNormal3fv(N075);
  458. glVertex3fv(P075);
  459. glEnd();
  460. glBegin(GL_POLYGON);
  461. glNormal3fv(N069);
  462. glVertex3fv(P069);
  463. glNormal3fv(N073);
  464. glVertex3fv(P073);
  465. glNormal3fv(N075);
  466. glVertex3fv(P075);
  467. glEnd();
  468. glBegin(GL_POLYGON);
  469. glNormal3fv(N069);
  470. glVertex3fv(P069);
  471. glNormal3fv(N071);
  472. glVertex3fv(P071);
  473. glNormal3fv(N073);
  474. glVertex3fv(P073);
  475. glEnd();
  476. }
  477. void Whale003(void)
  478. {
  479. glBegin(GL_POLYGON);
  480. glNormal3fv(N018);
  481. glVertex3fv(P018);
  482. glNormal3fv(N001);
  483. glVertex3fv(P001);
  484. glNormal3fv(N019);
  485. glVertex3fv(P019);
  486. glEnd();
  487. glBegin(GL_POLYGON);
  488. glNormal3fv(N019);
  489. glVertex3fv(P019);
  490. glNormal3fv(N001);
  491. glVertex3fv(P001);
  492. glNormal3fv(N012);
  493. glVertex3fv(P012);
  494. glEnd();
  495. glBegin(GL_POLYGON);
  496. glNormal3fv(N017);
  497. glVertex3fv(P017);
  498. glNormal3fv(N001);
  499. glVertex3fv(P001);
  500. glNormal3fv(N018);
  501. glVertex3fv(P018);
  502. glEnd();
  503. glBegin(GL_POLYGON);
  504. glNormal3fv(N001);
  505. glVertex3fv(P001);
  506. glNormal3fv(N017);
  507. glVertex3fv(P017);
  508. glNormal3fv(N016);
  509. glVertex3fv(P016);
  510. glEnd();
  511. glBegin(GL_POLYGON);
  512. glNormal3fv(N001);
  513. glVertex3fv(P001);
  514. glNormal3fv(N013);
  515. glVertex3fv(P013);
  516. glNormal3fv(N012);
  517. glVertex3fv(P012);
  518. glEnd();
  519. glBegin(GL_POLYGON);
  520. glNormal3fv(N001);
  521. glVertex3fv(P001);
  522. glNormal3fv(N016);
  523. glVertex3fv(P016);
  524. glNormal3fv(N015);
  525. glVertex3fv(P015);
  526. glEnd();
  527. glBegin(GL_POLYGON);
  528. glNormal3fv(N001);
  529. glVertex3fv(P001);
  530. glNormal3fv(N014);
  531. glVertex3fv(P014);
  532. glNormal3fv(N013);
  533. glVertex3fv(P013);
  534. glEnd();
  535. glBegin(GL_POLYGON);
  536. glNormal3fv(N001);
  537. glVertex3fv(P001);
  538. glNormal3fv(N015);
  539. glVertex3fv(P015);
  540. glNormal3fv(N014);
  541. glVertex3fv(P014);
  542. glEnd();
  543. }
  544. void Whale004(void)
  545. {
  546. glBegin(GL_POLYGON);
  547. glNormal3fv(N014);
  548. glVertex3fv(P014);
  549. glNormal3fv(N015);
  550. glVertex3fv(P015);
  551. glNormal3fv(N023);
  552. glVertex3fv(P023);
  553. glNormal3fv(N022);
  554. glVertex3fv(P022);
  555. glEnd();
  556. glBegin(GL_POLYGON);
  557. glNormal3fv(N015);
  558. glVertex3fv(P015);
  559. glNormal3fv(N016);
  560. glVertex3fv(P016);
  561. glNormal3fv(N024);
  562. glVertex3fv(P024);
  563. glNormal3fv(N023);
  564. glVertex3fv(P023);
  565. glEnd();
  566. glBegin(GL_POLYGON);
  567. glNormal3fv(N016);
  568. glVertex3fv(P016);
  569. glNormal3fv(N017);
  570. glVertex3fv(P017);
  571. glNormal3fv(N025);
  572. glVertex3fv(P025);
  573. glNormal3fv(N024);
  574. glVertex3fv(P024);
  575. glEnd();
  576. glBegin(GL_POLYGON);
  577. glNormal3fv(N017);
  578. glVertex3fv(P017);
  579. glNormal3fv(N018);
  580. glVertex3fv(P018);
  581. glNormal3fv(N026);
  582. glVertex3fv(P026);
  583. glNormal3fv(N025);
  584. glVertex3fv(P025);
  585. glEnd();
  586. glBegin(GL_POLYGON);
  587. glNormal3fv(N013);
  588. glVertex3fv(P013);
  589. glNormal3fv(N014);
  590. glVertex3fv(P014);
  591. glNormal3fv(N022);
  592. glVertex3fv(P022);
  593. glNormal3fv(N021);
  594. glVertex3fv(P021);
  595. glEnd();
  596. glBegin(GL_POLYGON);
  597. glNormal3fv(N012);
  598. glVertex3fv(P012);
  599. glNormal3fv(N013);
  600. glVertex3fv(P013);
  601. glNormal3fv(N021);
  602. glVertex3fv(P021);
  603. glNormal3fv(N020);
  604. glVertex3fv(P020);
  605. glEnd();
  606. glBegin(GL_POLYGON);
  607. glNormal3fv(N018);
  608. glVertex3fv(P018);
  609. glNormal3fv(N019);
  610. glVertex3fv(P019);
  611. glNormal3fv(N027);
  612. glVertex3fv(P027);
  613. glNormal3fv(N026);
  614. glVertex3fv(P026);
  615. glEnd();
  616. glBegin(GL_POLYGON);
  617. glNormal3fv(N019);
  618. glVertex3fv(P019);
  619. glNormal3fv(N012);
  620. glVertex3fv(P012);
  621. glNormal3fv(N020);
  622. glVertex3fv(P020);
  623. glNormal3fv(N027);
  624. glVertex3fv(P027);
  625. glEnd();
  626. }
  627. void Whale005(void)
  628. {
  629. glBegin(GL_POLYGON);
  630. glNormal3fv(N022);
  631. glVertex3fv(P022);
  632. glNormal3fv(N023);
  633. glVertex3fv(P023);
  634. glNormal3fv(N031);
  635. glVertex3fv(P031);
  636. glNormal3fv(N030);
  637. glVertex3fv(P030);
  638. glEnd();
  639. glBegin(GL_POLYGON);
  640. glNormal3fv(N021);
  641. glVertex3fv(P021);
  642. glNormal3fv(N022);
  643. glVertex3fv(P022);
  644. glNormal3fv(N030);
  645. glVertex3fv(P030);
  646. glEnd();
  647. glBegin(GL_POLYGON);
  648. glNormal3fv(N021);
  649. glVertex3fv(P021);
  650. glNormal3fv(N030);
  651. glVertex3fv(P030);
  652. glNormal3fv(N029);
  653. glVertex3fv(P029);
  654. glEnd();
  655. glBegin(GL_POLYGON);
  656. glNormal3fv(N023);
  657. glVertex3fv(P023);
  658. glNormal3fv(N024);
  659. glVertex3fv(P024);
  660. glNormal3fv(N031);
  661. glVertex3fv(P031);
  662. glEnd();
  663. glBegin(GL_POLYGON);
  664. glNormal3fv(N024);
  665. glVertex3fv(P024);
  666. glNormal3fv(N032);
  667. glVertex3fv(P032);
  668. glNormal3fv(N031);
  669. glVertex3fv(P031);
  670. glEnd();
  671. glBegin(GL_POLYGON);
  672. glNormal3fv(N024);
  673. glVertex3fv(P024);
  674. glNormal3fv(N025);
  675. glVertex3fv(P025);
  676. glNormal3fv(N032);
  677. glVertex3fv(P032);
  678. glEnd();
  679. glBegin(GL_POLYGON);
  680. glNormal3fv(N025);
  681. glVertex3fv(P025);
  682. glNormal3fv(N033);
  683. glVertex3fv(P033);
  684. glNormal3fv(N032);
  685. glVertex3fv(P032);
  686. glEnd();
  687. glBegin(GL_POLYGON);
  688. glNormal3fv(N020);
  689. glVertex3fv(P020);
  690. glNormal3fv(N021);
  691. glVertex3fv(P021);
  692. glNormal3fv(N029);
  693. glVertex3fv(P029);
  694. glEnd();
  695. glBegin(GL_POLYGON);
  696. glNormal3fv(N020);
  697. glVertex3fv(P020);
  698. glNormal3fv(N029);
  699. glVertex3fv(P029);
  700. glNormal3fv(N028);
  701. glVertex3fv(P028);
  702. glEnd();
  703. glBegin(GL_POLYGON);
  704. glNormal3fv(N027);
  705. glVertex3fv(P027);
  706. glNormal3fv(N020);
  707. glVertex3fv(P020);
  708. glNormal3fv(N028);
  709. glVertex3fv(P028);
  710. glEnd();
  711. glBegin(GL_POLYGON);
  712. glNormal3fv(N027);
  713. glVertex3fv(P027);
  714. glNormal3fv(N028);
  715. glVertex3fv(P028);
  716. glNormal3fv(N035);
  717. glVertex3fv(P035);
  718. glEnd();
  719. glBegin(GL_POLYGON);
  720. glNormal3fv(N025);
  721. glVertex3fv(P025);
  722. glNormal3fv(N026);
  723. glVertex3fv(P026);
  724. glNormal3fv(N033);
  725. glVertex3fv(P033);
  726. glEnd();
  727. glBegin(GL_POLYGON);
  728. glNormal3fv(N033);
  729. glVertex3fv(P033);
  730. glNormal3fv(N026);
  731. glVertex3fv(P026);
  732. glNormal3fv(N034);
  733. glVertex3fv(P034);
  734. glEnd();
  735. glBegin(GL_POLYGON);
  736. glNormal3fv(N026);
  737. glVertex3fv(P026);
  738. glNormal3fv(N027);
  739. glVertex3fv(P027);
  740. glNormal3fv(N035);
  741. glVertex3fv(P035);
  742. glNormal3fv(N034);
  743. glVertex3fv(P034);
  744. glEnd();
  745. }
  746. void Whale006(void)
  747. {
  748. glBegin(GL_POLYGON);
  749. glNormal3fv(N092);
  750. glVertex3fv(P092);
  751. glNormal3fv(N093);
  752. glVertex3fv(P093);
  753. glNormal3fv(N094);
  754. glVertex3fv(P094);
  755. glEnd();
  756. glBegin(GL_POLYGON);
  757. glNormal3fv(N093);
  758. glVertex3fv(P093);
  759. glNormal3fv(N092);
  760. glVertex3fv(P092);
  761. glNormal3fv(N094);
  762. glVertex3fv(P094);
  763. glEnd();
  764. glBegin(GL_POLYGON);
  765. glNormal3fv(N092);
  766. glVertex3fv(P092);
  767. glNormal3fv(N091);
  768. glVertex3fv(P091);
  769. glNormal3fv(N095);
  770. glVertex3fv(P095);
  771. glNormal3fv(N094);
  772. glVertex3fv(P094);
  773. glEnd();
  774. glBegin(GL_POLYGON);
  775. glNormal3fv(N091);
  776. glVertex3fv(P091);
  777. glNormal3fv(N092);
  778. glVertex3fv(P092);
  779. glNormal3fv(N094);
  780. glVertex3fv(P094);
  781. glNormal3fv(N095);
  782. glVertex3fv(P095);
  783. glEnd();
  784. }
  785. void Whale007(void)
  786. {
  787. glBegin(GL_POLYGON);
  788. glNormal3fv(N030);
  789. glVertex3fv(P030);
  790. glNormal3fv(N031);
  791. glVertex3fv(P031);
  792. glNormal3fv(N039);
  793. glVertex3fv(P039);
  794. glNormal3fv(N038);
  795. glVertex3fv(P038);
  796. glEnd();
  797. glBegin(GL_POLYGON);
  798. glNormal3fv(N029);
  799. glVertex3fv(P029);
  800. glNormal3fv(N030);
  801. glVertex3fv(P030);
  802. glNormal3fv(N038);
  803. glVertex3fv(P038);
  804. glEnd();
  805. glBegin(GL_POLYGON);
  806. glNormal3fv(N029);
  807. glVertex3fv(P029);
  808. glNormal3fv(N038);
  809. glVertex3fv(P038);
  810. glNormal3fv(N037);
  811. glVertex3fv(P037);
  812. glEnd();
  813. glBegin(GL_POLYGON);
  814. glNormal3fv(N028);
  815. glVertex3fv(P028);
  816. glNormal3fv(N029);
  817. glVertex3fv(P029);
  818. glNormal3fv(N037);
  819. glVertex3fv(P037);
  820. glEnd();
  821. glBegin(GL_POLYGON);
  822. glNormal3fv(N028);
  823. glVertex3fv(P028);
  824. glNormal3fv(N037);
  825. glVertex3fv(P037);
  826. glNormal3fv(N036);
  827. glVertex3fv(P036);
  828. glEnd();
  829. glBegin(GL_POLYGON);
  830. glNormal3fv(N035);
  831. glVertex3fv(P035);
  832. glNormal3fv(N028);
  833. glVertex3fv(P028);
  834. glNormal3fv(N036);
  835. glVertex3fv(P036);
  836. glEnd();
  837. glBegin(GL_POLYGON);
  838. glNormal3fv(N035);
  839. glVertex3fv(P035);
  840. glNormal3fv(N036);
  841. glVertex3fv(P036);
  842. glNormal3fv(N043);
  843. glVertex3fv(P043);
  844. glEnd();
  845. glBegin(GL_POLYGON);
  846. glNormal3fv(N034);
  847. glVertex3fv(P034);
  848. glNormal3fv(N035);
  849. glVertex3fv(P035);
  850. glNormal3fv(N043);
  851. glVertex3fv(P043);
  852. glNormal3fv(N042);
  853. glVertex3fv(P042);
  854. glEnd();
  855. glBegin(GL_POLYGON);
  856. glNormal3fv(N033);
  857. glVertex3fv(P033);
  858. glNormal3fv(N034);
  859. glVertex3fv(P034);
  860. glNormal3fv(N042);
  861. glVertex3fv(P042);
  862. glEnd();
  863. glBegin(GL_POLYGON);
  864. glNormal3fv(N033);
  865. glVertex3fv(P033);
  866. glNormal3fv(N042);
  867. glVertex3fv(P042);
  868. glNormal3fv(N041);
  869. glVertex3fv(P041);
  870. glEnd();
  871. glBegin(GL_POLYGON);
  872. glNormal3fv(N031);
  873. glVertex3fv(P031);
  874. glNormal3fv(N032);
  875. glVertex3fv(P032);
  876. glNormal3fv(N039);
  877. glVertex3fv(P039);
  878. glEnd();
  879. glBegin(GL_POLYGON);
  880. glNormal3fv(N039);
  881. glVertex3fv(P039);
  882. glNormal3fv(N032);
  883. glVertex3fv(P032);
  884. glNormal3fv(N040);
  885. glVertex3fv(P040);
  886. glEnd();
  887. glBegin(GL_POLYGON);
  888. glNormal3fv(N032);
  889. glVertex3fv(P032);
  890. glNormal3fv(N033);
  891. glVertex3fv(P033);
  892. glNormal3fv(N040);
  893. glVertex3fv(P040);
  894. glEnd();
  895. glBegin(GL_POLYGON);
  896. glNormal3fv(N040);
  897. glVertex3fv(P040);
  898. glNormal3fv(N033);
  899. glVertex3fv(P033);
  900. glNormal3fv(N041);
  901. glVertex3fv(P041);
  902. glEnd();
  903. }
  904. void Whale008(void)
  905. {
  906. glBegin(GL_POLYGON);
  907. glNormal3fv(N042);
  908. glVertex3fv(P042);
  909. glNormal3fv(N043);
  910. glVertex3fv(P043);
  911. glNormal3fv(N051);
  912. glVertex3fv(P051);
  913. glNormal3fv(N050);
  914. glVertex3fv(P050);
  915. glEnd();
  916. glBegin(GL_POLYGON);
  917. glNormal3fv(N043);
  918. glVertex3fv(P043);
  919. glNormal3fv(N036);
  920. glVertex3fv(P036);
  921. glNormal3fv(N051);
  922. glVertex3fv(P051);
  923. glEnd();
  924. glBegin(GL_POLYGON);
  925. glNormal3fv(N051);
  926. glVertex3fv(P051);
  927. glNormal3fv(N036);
  928. glVertex3fv(P036);
  929. glNormal3fv(N044);
  930. glVertex3fv(P044);
  931. glEnd();
  932. glBegin(GL_POLYGON);
  933. glNormal3fv(N041);
  934. glVertex3fv(P041);
  935. glNormal3fv(N042);
  936. glVertex3fv(P042);
  937. glNormal3fv(N050);
  938. glVertex3fv(P050);
  939. glEnd();
  940. glBegin(GL_POLYGON);
  941. glNormal3fv(N041);
  942. glVertex3fv(P041);
  943. glNormal3fv(N050);
  944. glVertex3fv(P050);
  945. glNormal3fv(N049);
  946. glVertex3fv(P049);
  947. glEnd();
  948. glBegin(GL_POLYGON);
  949. glNormal3fv(N036);
  950. glVertex3fv(P036);
  951. glNormal3fv(N037);
  952. glVertex3fv(P037);
  953. glNormal3fv(N044);
  954. glVertex3fv(P044);
  955. glEnd();
  956. glBegin(GL_POLYGON);
  957. glNormal3fv(N044);
  958. glVertex3fv(P044);
  959. glNormal3fv(N037);
  960. glVertex3fv(P037);
  961. glNormal3fv(N045);
  962. glVertex3fv(P045);
  963. glEnd();
  964. glBegin(GL_POLYGON);
  965. glNormal3fv(N040);
  966. glVertex3fv(P040);
  967. glNormal3fv(N041);
  968. glVertex3fv(P041);
  969. glNormal3fv(N049);
  970. glVertex3fv(P049);
  971. glEnd();
  972. glBegin(GL_POLYGON);
  973. glNormal3fv(N040);
  974. glVertex3fv(P040);
  975. glNormal3fv(N049);
  976. glVertex3fv(P049);
  977. glNormal3fv(N048);
  978. glVertex3fv(P048);
  979. glEnd();
  980. glBegin(GL_POLYGON);
  981. glNormal3fv(N039);
  982. glVertex3fv(P039);
  983. glNormal3fv(N040);
  984. glVertex3fv(P040);
  985. glNormal3fv(N048);
  986. glVertex3fv(P048);
  987. glEnd();
  988. glBegin(GL_POLYGON);
  989. glNormal3fv(N039);
  990. glVertex3fv(P039);
  991. glNormal3fv(N048);
  992. glVertex3fv(P048);
  993. glNormal3fv(N047);
  994. glVertex3fv(P047);
  995. glEnd();
  996. glBegin(GL_POLYGON);
  997. glNormal3fv(N037);
  998. glVertex3fv(P037);
  999. glNormal3fv(N038);
  1000. glVertex3fv(P038);
  1001. glNormal3fv(N045);
  1002. glVertex3fv(P045);
  1003. glEnd();
  1004. glBegin(GL_POLYGON);
  1005. glNormal3fv(N038);
  1006. glVertex3fv(P038);
  1007. glNormal3fv(N046);
  1008. glVertex3fv(P046);
  1009. glNormal3fv(N045);
  1010. glVertex3fv(P045);
  1011. glEnd();
  1012. glBegin(GL_POLYGON);
  1013. glNormal3fv(N038);
  1014. glVertex3fv(P038);
  1015. glNormal3fv(N039);
  1016. glVertex3fv(P039);
  1017. glNormal3fv(N047);
  1018. glVertex3fv(P047);
  1019. glNormal3fv(N046);
  1020. glVertex3fv(P046);
  1021. glEnd();
  1022. }
  1023. void Whale009(void)
  1024. {
  1025. glBegin(GL_POLYGON);
  1026. glNormal3fv(N050);
  1027. glVertex3fv(P050);
  1028. glNormal3fv(N051);
  1029. glVertex3fv(P051);
  1030. glNormal3fv(N059);
  1031. glVertex3fv(P059);
  1032. glNormal3fv(N058);
  1033. glVertex3fv(P058);
  1034. glEnd();
  1035. glBegin(GL_POLYGON);
  1036. glNormal3fv(N051);
  1037. glVertex3fv(P051);
  1038. glNormal3fv(N044);
  1039. glVertex3fv(P044);
  1040. glNormal3fv(N059);
  1041. glVertex3fv(P059);
  1042. glEnd();
  1043. glBegin(GL_POLYGON);
  1044. glNormal3fv(N059);
  1045. glVertex3fv(P059);
  1046. glNormal3fv(N044);
  1047. glVertex3fv(P044);
  1048. glNormal3fv(N052);
  1049. glVertex3fv(P052);
  1050. glEnd();
  1051. glBegin(GL_POLYGON);
  1052. glNormal3fv(N044);
  1053. glVertex3fv(P044);
  1054. glNormal3fv(N045);
  1055. glVertex3fv(P045);
  1056. glNormal3fv(N053);
  1057. glVertex3fv(P053);
  1058. glEnd();
  1059. glBegin(GL_POLYGON);
  1060. glNormal3fv(N044);
  1061. glVertex3fv(P044);
  1062. glNormal3fv(N053);
  1063. glVertex3fv(P053);
  1064. glNormal3fv(N052);
  1065. glVertex3fv(P052);
  1066. glEnd();
  1067. glBegin(GL_POLYGON);
  1068. glNormal3fv(N049);
  1069. glVertex3fv(P049);
  1070. glNormal3fv(N050);
  1071. glVertex3fv(P050);
  1072. glNormal3fv(N058);
  1073. glVertex3fv(P058);
  1074. glEnd();
  1075. glBegin(GL_POLYGON);
  1076. glNormal3fv(N049);
  1077. glVertex3fv(P049);
  1078. glNormal3fv(N058);
  1079. glVertex3fv(P058);
  1080. glNormal3fv(N057);
  1081. glVertex3fv(P057);
  1082. glEnd();
  1083. glBegin(GL_POLYGON);
  1084. glNormal3fv(N048);
  1085. glVertex3fv(P048);
  1086. glNormal3fv(N049);
  1087. glVertex3fv(P049);
  1088. glNormal3fv(N057);
  1089. glVertex3fv(P057);
  1090. glEnd();
  1091. glBegin(GL_POLYGON);
  1092. glNormal3fv(N048);
  1093. glVertex3fv(P048);
  1094. glNormal3fv(N057);
  1095. glVertex3fv(P057);
  1096. glNormal3fv(N056);
  1097. glVertex3fv(P056);
  1098. glEnd();
  1099. glBegin(GL_POLYGON);
  1100. glNormal3fv(N047);
  1101. glVertex3fv(P047);
  1102. glNormal3fv(N048);
  1103. glVertex3fv(P048);
  1104. glNormal3fv(N056);
  1105. glVertex3fv(P056);
  1106. glEnd();
  1107. glBegin(GL_POLYGON);
  1108. glNormal3fv(N047);
  1109. glVertex3fv(P047);
  1110. glNormal3fv(N056);
  1111. glVertex3fv(P056);
  1112. glNormal3fv(N055);
  1113. glVertex3fv(P055);
  1114. glEnd();
  1115. glBegin(GL_POLYGON);
  1116. glNormal3fv(N045);
  1117. glVertex3fv(P045);
  1118. glNormal3fv(N046);
  1119. glVertex3fv(P046);
  1120. glNormal3fv(N053);
  1121. glVertex3fv(P053);
  1122. glEnd();
  1123. glBegin(GL_POLYGON);
  1124. glNormal3fv(N046);
  1125. glVertex3fv(P046);
  1126. glNormal3fv(N054);
  1127. glVertex3fv(P054);
  1128. glNormal3fv(N053);
  1129. glVertex3fv(P053);
  1130. glEnd();
  1131. glBegin(GL_POLYGON);
  1132. glNormal3fv(N046);
  1133. glVertex3fv(P046);
  1134. glNormal3fv(N047);
  1135. glVertex3fv(P047);
  1136. glNormal3fv(N055);
  1137. glVertex3fv(P055);
  1138. glNormal3fv(N054);
  1139. glVertex3fv(P054);
  1140. glEnd();
  1141. }
  1142. void Whale010(void)
  1143. {
  1144. glBegin(GL_POLYGON);
  1145. glNormal3fv(N080);
  1146. glVertex3fv(P080);
  1147. glNormal3fv(N081);
  1148. glVertex3fv(P081);
  1149. glNormal3fv(N085);
  1150. glVertex3fv(P085);
  1151. glEnd();
  1152. glBegin(GL_POLYGON);
  1153. glNormal3fv(N081);
  1154. glVertex3fv(P081);
  1155. glNormal3fv(N083);
  1156. glVertex3fv(P083);
  1157. glNormal3fv(N085);
  1158. glVertex3fv(P085);
  1159. glEnd();
  1160. glBegin(GL_POLYGON);
  1161. glNormal3fv(N085);
  1162. glVertex3fv(P085);
  1163. glNormal3fv(N083);
  1164. glVertex3fv(P083);
  1165. glNormal3fv(N077);
  1166. glVertex3fv(P077);
  1167. glEnd();
  1168. glBegin(GL_POLYGON);
  1169. glNormal3fv(N083);
  1170. glVertex3fv(P083);
  1171. glNormal3fv(N087);
  1172. glVertex3fv(P087);
  1173. glNormal3fv(N077);
  1174. glVertex3fv(P077);
  1175. glEnd();
  1176. glBegin(GL_POLYGON);
  1177. glNormal3fv(N077);
  1178. glVertex3fv(P077);
  1179. glNormal3fv(N087);
  1180. glVertex3fv(P087);
  1181. glNormal3fv(N090);
  1182. glVertex3fv(P090);
  1183. glEnd();
  1184. glBegin(GL_POLYGON);
  1185. glNormal3fv(N081);
  1186. glVertex3fv(P081);
  1187. glNormal3fv(N080);
  1188. glVertex3fv(P080);
  1189. glNormal3fv(N085);
  1190. glVertex3fv(P085);
  1191. glEnd();
  1192. glBegin(GL_POLYGON);
  1193. glNormal3fv(N083);
  1194. glVertex3fv(P083);
  1195. glNormal3fv(N081);
  1196. glVertex3fv(P081);
  1197. glNormal3fv(N085);
  1198. glVertex3fv(P085);
  1199. glEnd();
  1200. glBegin(GL_POLYGON);
  1201. glNormal3fv(N083);
  1202. glVertex3fv(P083);
  1203. glNormal3fv(N085);
  1204. glVertex3fv(P085);
  1205. glNormal3fv(N077);
  1206. glVertex3fv(P077);
  1207. glEnd();
  1208. glBegin(GL_POLYGON);
  1209. glNormal3fv(N087);
  1210. glVertex3fv(P087);
  1211. glNormal3fv(N083);
  1212. glVertex3fv(P083);
  1213. glNormal3fv(N077);
  1214. glVertex3fv(P077);
  1215. glEnd();
  1216. glBegin(GL_POLYGON);
  1217. glNormal3fv(N087);
  1218. glVertex3fv(P087);
  1219. glNormal3fv(N077);
  1220. glVertex3fv(P077);
  1221. glNormal3fv(N090);
  1222. glVertex3fv(P090);
  1223. glEnd();
  1224. }
  1225. void Whale011(void)
  1226. {
  1227. glBegin(GL_POLYGON);
  1228. glNormal3fv(N082);
  1229. glVertex3fv(P082);
  1230. glNormal3fv(N084);
  1231. glVertex3fv(P084);
  1232. glNormal3fv(N079);
  1233. glVertex3fv(P079);
  1234. glEnd();
  1235. glBegin(GL_POLYGON);
  1236. glNormal3fv(N084);
  1237. glVertex3fv(P084);
  1238. glNormal3fv(N086);
  1239. glVertex3fv(P086);
  1240. glNormal3fv(N079);
  1241. glVertex3fv(P079);
  1242. glEnd();
  1243. glBegin(GL_POLYGON);
  1244. glNormal3fv(N079);
  1245. glVertex3fv(P079);
  1246. glNormal3fv(N086);
  1247. glVertex3fv(P086);
  1248. glNormal3fv(N078);
  1249. glVertex3fv(P078);
  1250. glEnd();
  1251. glBegin(GL_POLYGON);
  1252. glNormal3fv(N086);
  1253. glVertex3fv(P086);
  1254. glNormal3fv(N088);
  1255. glVertex3fv(P088);
  1256. glNormal3fv(N078);
  1257. glVertex3fv(P078);
  1258. glEnd();
  1259. glBegin(GL_POLYGON);
  1260. glNormal3fv(N078);
  1261. glVertex3fv(P078);
  1262. glNormal3fv(N088);
  1263. glVertex3fv(P088);
  1264. glNormal3fv(N089);
  1265. glVertex3fv(P089);
  1266. glEnd();
  1267. glBegin(GL_POLYGON);
  1268. glNormal3fv(N088);
  1269. glVertex3fv(P088);
  1270. glNormal3fv(N086);
  1271. glVertex3fv(P086);
  1272. glNormal3fv(N089);
  1273. glVertex3fv(P089);
  1274. glEnd();
  1275. glBegin(GL_POLYGON);
  1276. glNormal3fv(N089);
  1277. glVertex3fv(P089);
  1278. glNormal3fv(N086);
  1279. glVertex3fv(P086);
  1280. glNormal3fv(N078);
  1281. glVertex3fv(P078);
  1282. glEnd();
  1283. glBegin(GL_POLYGON);
  1284. glNormal3fv(N086);
  1285. glVertex3fv(P086);
  1286. glNormal3fv(N084);
  1287. glVertex3fv(P084);
  1288. glNormal3fv(N078);
  1289. glVertex3fv(P078);
  1290. glEnd();
  1291. glBegin(GL_POLYGON);
  1292. glNormal3fv(N078);
  1293. glVertex3fv(P078);
  1294. glNormal3fv(N084);
  1295. glVertex3fv(P084);
  1296. glNormal3fv(N079);
  1297. glVertex3fv(P079);
  1298. glEnd();
  1299. glBegin(GL_POLYGON);
  1300. glNormal3fv(N084);
  1301. glVertex3fv(P084);
  1302. glNormal3fv(N082);
  1303. glVertex3fv(P082);
  1304. glNormal3fv(N079);
  1305. glVertex3fv(P079);
  1306. glEnd();
  1307. }
  1308. void Whale012(void)
  1309. {
  1310. glBegin(GL_POLYGON);
  1311. glNormal3fv(N058);
  1312. glVertex3fv(P058);
  1313. glNormal3fv(N059);
  1314. glVertex3fv(P059);
  1315. glNormal3fv(N067);
  1316. glVertex3fv(P067);
  1317. glNormal3fv(N066);
  1318. glVertex3fv(P066);
  1319. glEnd();
  1320. glBegin(GL_POLYGON);
  1321. glNormal3fv(N059);
  1322. glVertex3fv(P059);
  1323. glNormal3fv(N052);
  1324. glVertex3fv(P052);
  1325. glNormal3fv(N060);
  1326. glVertex3fv(P060);
  1327. glEnd();
  1328. glBegin(GL_POLYGON);
  1329. glNormal3fv(N059);
  1330. glVertex3fv(P059);
  1331. glNormal3fv(N060);
  1332. glVertex3fv(P060);
  1333. glNormal3fv(N067);
  1334. glVertex3fv(P067);
  1335. glEnd();
  1336. glBegin(GL_POLYGON);
  1337. glNormal3fv(N058);
  1338. glVertex3fv(P058);
  1339. glNormal3fv(N066);
  1340. glVertex3fv(P066);
  1341. glNormal3fv(N065);
  1342. glVertex3fv(P065);
  1343. glEnd();
  1344. glBegin(GL_POLYGON);
  1345. glNormal3fv(N058);
  1346. glVertex3fv(P058);
  1347. glNormal3fv(N065);
  1348. glVertex3fv(P065);
  1349. glNormal3fv(N057);
  1350. glVertex3fv(P057);
  1351. glEnd();
  1352. glBegin(GL_POLYGON);
  1353. glNormal3fv(N056);
  1354. glVertex3fv(P056);
  1355. glNormal3fv(N057);
  1356. glVertex3fv(P057);
  1357. glNormal3fv(N065);
  1358. glVertex3fv(P065);
  1359. glEnd();
  1360. glBegin(GL_POLYGON);
  1361. glNormal3fv(N056);
  1362. glVertex3fv(P056);
  1363. glNormal3fv(N065);
  1364. glVertex3fv(P065);
  1365. glNormal3fv(N006);
  1366. glVertex3fv(P006);
  1367. glEnd();
  1368. glBegin(GL_POLYGON);
  1369. glNormal3fv(N056);
  1370. glVertex3fv(P056);
  1371. glNormal3fv(N006);
  1372. glVertex3fv(P006);
  1373. glNormal3fv(N063);
  1374. glVertex3fv(P063);
  1375. glEnd();
  1376. glBegin(GL_POLYGON);
  1377. glNormal3fv(N056);
  1378. glVertex3fv(P056);
  1379. glNormal3fv(N063);
  1380. glVertex3fv(P063);
  1381. glNormal3fv(N055);
  1382. glVertex3fv(P055);
  1383. glEnd();
  1384. glBegin(GL_POLYGON);
  1385. glNormal3fv(N054);
  1386. glVertex3fv(P054);
  1387. glNormal3fv(N062);
  1388. glVertex3fv(P062);
  1389. glNormal3fv(N005);
  1390. glVertex3fv(P005);
  1391. glEnd();
  1392. glBegin(GL_POLYGON);
  1393. glNormal3fv(N054);
  1394. glVertex3fv(P054);
  1395. glNormal3fv(N005);
  1396. glVertex3fv(P005);
  1397. glNormal3fv(N053);
  1398. glVertex3fv(P053);
  1399. glEnd();
  1400. glBegin(GL_POLYGON);
  1401. glNormal3fv(N053);
  1402. glVertex3fv(P053);
  1403. glNormal3fv(N005);
  1404. glVertex3fv(P005);
  1405. glNormal3fv(N060);
  1406. glVertex3fv(P060);
  1407. glEnd();
  1408. glBegin(GL_POLYGON);
  1409. glNormal3fv(N053);
  1410. glVertex3fv(P053);
  1411. glNormal3fv(N060);
  1412. glVertex3fv(P060);
  1413. glNormal3fv(N052);
  1414. glVertex3fv(P052);
  1415. glEnd();
  1416. }
  1417. void Whale013(void)
  1418. {
  1419. glBegin(GL_POLYGON);
  1420. glNormal3fv(N066);
  1421. glVertex3fv(P066);
  1422. glNormal3fv(N067);
  1423. glVertex3fv(P067);
  1424. glNormal3fv(N096);
  1425. glVertex3fv(P096);
  1426. glNormal3fv(N097);
  1427. glVertex3fv(P097);
  1428. glEnd();
  1429. glBegin(GL_POLYGON);
  1430. glNormal3fv(N097);
  1431. glVertex3fv(P097);
  1432. glNormal3fv(N096);
  1433. glVertex3fv(P096);
  1434. glNormal3fv(N098);
  1435. glVertex3fv(P098);
  1436. glNormal3fv(N099);
  1437. glVertex3fv(P099);
  1438. glEnd();
  1439. glBegin(GL_POLYGON);
  1440. glNormal3fv(N065);
  1441. glVertex3fv(P065);
  1442. glNormal3fv(N066);
  1443. glVertex3fv(P066);
  1444. glNormal3fv(N097);
  1445. glVertex3fv(P097);
  1446. glEnd();
  1447. glBegin(GL_POLYGON);
  1448. glNormal3fv(N067);
  1449. glVertex3fv(P067);
  1450. glNormal3fv(N060);
  1451. glVertex3fv(P060);
  1452. glNormal3fv(N096);
  1453. glVertex3fv(P096);
  1454. glEnd();
  1455. glBegin(GL_POLYGON);
  1456. glNormal3fv(N060);
  1457. glVertex3fv(P060);
  1458. glNormal3fv(N005);
  1459. glVertex3fv(P005);
  1460. glNormal3fv(N096);
  1461. glVertex3fv(P096);
  1462. glEnd();
  1463. glBegin(GL_POLYGON);
  1464. glNormal3fv(N096);
  1465. glVertex3fv(P096);
  1466. glNormal3fv(N005);
  1467. glVertex3fv(P005);
  1468. glNormal3fv(N098);
  1469. glVertex3fv(P098);
  1470. glEnd();
  1471. glBegin(GL_POLYGON);
  1472. glNormal3fv(N006);
  1473. glVertex3fv(P006);
  1474. glNormal3fv(N065);
  1475. glVertex3fv(P065);
  1476. glNormal3fv(N097);
  1477. glVertex3fv(P097);
  1478. glEnd();
  1479. glBegin(GL_POLYGON);
  1480. glNormal3fv(N006);
  1481. glVertex3fv(P006);
  1482. glNormal3fv(N097);
  1483. glVertex3fv(P097);
  1484. glNormal3fv(N099);
  1485. glVertex3fv(P099);
  1486. glEnd();
  1487. glBegin(GL_POLYGON);
  1488. glVertex3fv(P005);
  1489. glVertex3fv(P006);
  1490. glVertex3fv(P099);
  1491. glVertex3fv(P098);
  1492. glEnd();
  1493. }
  1494. void Whale014(void)
  1495. {
  1496. glBegin(GL_POLYGON);
  1497. glNormal3fv(N062);
  1498. glVertex3fv(P062);
  1499. glNormal3fv(N004);
  1500. glVertex3fv(P004);
  1501. glNormal3fv(N005);
  1502. glVertex3fv(P005);
  1503. glEnd();
  1504. glBegin(GL_POLYGON);
  1505. glVertex3fv(P006);
  1506. glVertex3fv(P005);
  1507. glVertex3fv(P004);
  1508. glVertex3fv(P008);
  1509. glEnd();
  1510. glBegin(GL_POLYGON);
  1511. glNormal3fv(N063);
  1512. glVertex3fv(P063);
  1513. glNormal3fv(N006);
  1514. glVertex3fv(P006);
  1515. glNormal3fv(N002);
  1516. glVertex3fv(P002);
  1517. glEnd();
  1518. glBegin(GL_POLYGON);
  1519. glNormal3fv(N002);
  1520. glVertex3fv(P002);
  1521. glNormal3fv(N006);
  1522. glVertex3fv(P006);
  1523. glNormal3fv(N008);
  1524. glVertex3fv(P008);
  1525. glEnd();
  1526. glBegin(GL_POLYGON);
  1527. glNormal3fv(N002);
  1528. glVertex3fv(P002);
  1529. glNormal3fv(N008);
  1530. glVertex3fv(P008);
  1531. glNormal3fv(N004);
  1532. glVertex3fv(P004);
  1533. glEnd();
  1534. glBegin(GL_POLYGON);
  1535. glNormal3fv(N062);
  1536. glVertex3fv(P062);
  1537. glNormal3fv(N002);
  1538. glVertex3fv(P002);
  1539. glNormal3fv(N004);
  1540. glVertex3fv(P004);
  1541. glEnd();
  1542. }
  1543. void Whale015(void)
  1544. {
  1545. glBegin(GL_POLYGON);
  1546. glNormal3fv(N055);
  1547. glVertex3fv(P055);
  1548. glNormal3fv(N003);
  1549. glVertex3fv(P003);
  1550. glNormal3fv(N054);
  1551. glVertex3fv(P054);
  1552. glEnd();
  1553. glBegin(GL_POLYGON);
  1554. glNormal3fv(N003);
  1555. glVertex3fv(P003);
  1556. glNormal3fv(N055);
  1557. glVertex3fv(P055);
  1558. glNormal3fv(N063);
  1559. glVertex3fv(P063);
  1560. glEnd();
  1561. glBegin(GL_POLYGON);
  1562. glNormal3fv(N003);
  1563. glVertex3fv(P003);
  1564. glNormal3fv(N063);
  1565. glVertex3fv(P063);
  1566. glNormal3fv(N100);
  1567. glVertex3fv(P100);
  1568. glEnd();
  1569. glBegin(GL_POLYGON);
  1570. glNormal3fv(N003);
  1571. glVertex3fv(P003);
  1572. glNormal3fv(N100);
  1573. glVertex3fv(P100);
  1574. glNormal3fv(N054);
  1575. glVertex3fv(P054);
  1576. glEnd();
  1577. glBegin(GL_POLYGON);
  1578. glNormal3fv(N054);
  1579. glVertex3fv(P054);
  1580. glNormal3fv(N100);
  1581. glVertex3fv(P100);
  1582. glNormal3fv(N062);
  1583. glVertex3fv(P062);
  1584. glEnd();
  1585. glBegin(GL_POLYGON);
  1586. glNormal3fv(N100);
  1587. glVertex3fv(P100);
  1588. glNormal3fv(N063);
  1589. glVertex3fv(P063);
  1590. glNormal3fv(N002);
  1591. glVertex3fv(P002);
  1592. glEnd();
  1593. glBegin(GL_POLYGON);
  1594. glNormal3fv(N100);
  1595. glVertex3fv(P100);
  1596. glNormal3fv(N002);
  1597. glVertex3fv(P002);
  1598. glNormal3fv(N062);
  1599. glVertex3fv(P062);
  1600. glEnd();
  1601. }
  1602. void Whale016(void)
  1603. {
  1604. glBegin(GL_POLYGON);
  1605. glVertex3fv(P104);
  1606. glVertex3fv(P105);
  1607. glVertex3fv(P106);
  1608. glEnd();
  1609. glBegin(GL_POLYGON);
  1610. glVertex3fv(P107);
  1611. glVertex3fv(P108);
  1612. glVertex3fv(P109);
  1613. glEnd();
  1614. glBegin(GL_POLYGON);
  1615. glVertex3fv(P110);
  1616. glVertex3fv(P111);
  1617. glVertex3fv(P112);
  1618. glVertex3fv(P113);
  1619. glVertex3fv(P114);
  1620. glVertex3fv(P115);
  1621. glEnd();
  1622. glBegin(GL_POLYGON);
  1623. glVertex3fv(P116);
  1624. glVertex3fv(P117);
  1625. glVertex3fv(P118);
  1626. glVertex3fv(P119);
  1627. glVertex3fv(P120);
  1628. glVertex3fv(P121);
  1629. glEnd();
  1630. }
  1631. void DrawWhale(fishRec *fish)
  1632. {
  1633. float seg0, seg1, seg2, seg3, seg4, seg5, seg6, seg7;
  1634. float pitch, thrash, chomp;
  1635. fish->htail = (int)(fish->htail - (int)(5.0 * fish->v)) % 360;
  1636. thrash = 70.0 * fish->v;
  1637. seg0 = 1.5 * thrash * sin((fish->htail)*RRAD);
  1638. seg1 = 2.5 * thrash * sin((fish->htail+10.0)*RRAD);
  1639. seg2 = 3.7 * thrash * sin((fish->htail+15.0)*RRAD);
  1640. seg3 = 4.8 * thrash * sin((fish->htail+23.0)*RRAD);
  1641. seg4 = 6.0 * thrash * sin((fish->htail+28.0)*RRAD);
  1642. seg5 = 6.5 * thrash * sin((fish->htail+35.0)*RRAD);
  1643. seg6 = 6.5 * thrash * sin((fish->htail+40.0)*RRAD);
  1644. seg7 = 6.5 * thrash * sin((fish->htail+55.0)*RRAD);
  1645. pitch = fish->v * sin((fish->htail-160.0)*RRAD);
  1646. chomp = 0.0;
  1647. if (fish->v > 2.0) {
  1648. chomp = -(fish->v - 2.0) * 200.0;
  1649. }
  1650. P012[1] = iP012[1] + seg5;
  1651. P013[1] = iP013[1] + seg5;
  1652. P014[1] = iP014[1] + seg5;
  1653. P015[1] = iP015[1] + seg5;
  1654. P016[1] = iP016[1] + seg5;
  1655. P017[1] = iP017[1] + seg5;
  1656. P018[1] = iP018[1] + seg5;
  1657. P019[1] = iP019[1] + seg5;
  1658. P020[1] = iP020[1] + seg4;
  1659. P021[1] = iP021[1] + seg4;
  1660. P022[1] = iP022[1] + seg4;
  1661. P023[1] = iP023[1] + seg4;
  1662. P024[1] = iP024[1] + seg4;
  1663. P025[1] = iP025[1] + seg4;
  1664. P026[1] = iP026[1] + seg4;
  1665. P027[1] = iP027[1] + seg4;
  1666. P028[1] = iP028[1] + seg2;
  1667. P029[1] = iP029[1] + seg2;
  1668. P030[1] = iP030[1] + seg2;
  1669. P031[1] = iP031[1] + seg2;
  1670. P032[1] = iP032[1] + seg2;
  1671. P033[1] = iP033[1] + seg2;
  1672. P034[1] = iP034[1] + seg2;
  1673. P035[1] = iP035[1] + seg2;
  1674. P036[1] = iP036[1] + seg1;
  1675. P037[1] = iP037[1] + seg1;
  1676. P038[1] = iP038[1] + seg1;
  1677. P039[1] = iP039[1] + seg1;
  1678. P040[1] = iP040[1] + seg1;
  1679. P041[1] = iP041[1] + seg1;
  1680. P042[1] = iP042[1] + seg1;
  1681. P043[1] = iP043[1] + seg1;
  1682. P044[1] = iP044[1] + seg0;
  1683. P045[1] = iP045[1] + seg0;
  1684. P046[1] = iP046[1] + seg0;
  1685. P047[1] = iP047[1] + seg0;
  1686. P048[1] = iP048[1] + seg0;
  1687. P049[1] = iP049[1] + seg0;
  1688. P050[1] = iP050[1] + seg0;
  1689. P051[1] = iP051[1] + seg0;
  1690. P009[1] = iP009[1] + seg6;
  1691. P010[1] = iP010[1] + seg6;
  1692. P075[1] = iP075[1] + seg6;
  1693. P076[1] = iP076[1] + seg6;
  1694. P001[1] = iP001[1] + seg7;
  1695. P011[1] = iP011[1] + seg7;
  1696. P068[1] = iP068[1] + seg7;
  1697. P069[1] = iP069[1] + seg7;
  1698. P070[1] = iP070[1] + seg7;
  1699. P071[1] = iP071[1] + seg7;
  1700. P072[1] = iP072[1] + seg7;
  1701. P073[1] = iP073[1] + seg7;
  1702. P074[1] = iP074[1] + seg7;
  1703. P091[1] = iP091[1] + seg3 * 1.1;
  1704. P092[1] = iP092[1] + seg3;
  1705. P093[1] = iP093[1] + seg3;
  1706. P094[1] = iP094[1] + seg3;
  1707. P095[1] = iP095[1] + seg3 * 0.9;
  1708. P099[1] = iP099[1] + chomp;
  1709. P098[1] = iP098[1] + chomp;
  1710. P064[1] = iP064[1] + chomp;
  1711. P061[1] = iP061[1] + chomp;
  1712. P097[1] = iP097[1] + chomp;
  1713. P096[1] = iP096[1] + chomp;
  1714. glPushMatrix();
  1715. glRotatef(pitch, 1.0, 0.0, 0.0);
  1716. glTranslatef(0.0, 0.0, 8000.0);
  1717. glRotatef(180.0, 0.0, 1.0, 0.0);
  1718. glScalef(3.0, 3.0, 3.0);
  1719. glEnable(GL_CULL_FACE);
  1720. Whale001();
  1721. Whale002();
  1722. Whale003();
  1723. Whale004();
  1724. Whale005();
  1725. Whale006();
  1726. Whale007();
  1727. Whale008();
  1728. Whale009();
  1729. Whale010();
  1730. Whale011();
  1731. Whale012();
  1732. Whale013();
  1733. Whale014();
  1734. Whale015();
  1735. Whale016();
  1736. glDisable(GL_CULL_FACE);
  1737. glPopMatrix();
  1738. }