Mercurial > sdl-ios-xcode
comparison Xcode/TemplatesForProjectBuilder/SDL OpenGL Application/atlantis/shark.c @ 2207:d63e9f5944ae
Unpacked project archives to get individual file history in subversion
author | Sam Lantinga <slouken@libsdl.org> |
---|---|
date | Sat, 21 Jul 2007 17:09:01 +0000 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
2206:ca7d2227d630 | 2207:d63e9f5944ae |
---|---|
1 /** | |
2 * (c) Copyright 1993, 1994, Silicon Graphics, Inc. | |
3 * ALL RIGHTS RESERVED | |
4 * Permission to use, copy, modify, and distribute this software for | |
5 * any purpose and without fee is hereby granted, provided that the above | |
6 * copyright notice appear in all copies and that both the copyright notice | |
7 * and this permission notice appear in supporting documentation, and that | |
8 * the name of Silicon Graphics, Inc. not be used in advertising | |
9 * or publicity pertaining to distribution of the software without specific, | |
10 * written prior permission. | |
11 * | |
12 * THE MATERIAL EMBODIED ON THIS SOFTWARE IS PROVIDED TO YOU "AS-IS" | |
13 * AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, | |
14 * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR | |
15 * FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SILICON | |
16 * GRAPHICS, INC. BE LIABLE TO YOU OR ANYONE ELSE FOR ANY DIRECT, | |
17 * SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY | |
18 * KIND, OR ANY DAMAGES WHATSOEVER, INCLUDING WITHOUT LIMITATION, | |
19 * LOSS OF PROFIT, LOSS OF USE, SAVINGS OR REVENUE, OR THE CLAIMS OF | |
20 * THIRD PARTIES, WHETHER OR NOT SILICON GRAPHICS, INC. HAS BEEN | |
21 * ADVISED OF THE POSSIBILITY OF SUCH LOSS, HOWEVER CAUSED AND ON | |
22 * ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE | |
23 * POSSESSION, USE OR PERFORMANCE OF THIS SOFTWARE. | |
24 * | |
25 * US Government Users Restricted Rights | |
26 * Use, duplication, or disclosure by the Government is subject to | |
27 * restrictions set forth in FAR 52.227.19(c)(2) or subparagraph | |
28 * (c)(1)(ii) of the Rights in Technical Data and Computer Software | |
29 * clause at DFARS 252.227-7013 and/or in similar or successor | |
30 * clauses in the FAR or the DOD or NASA FAR Supplement. | |
31 * Unpublished-- rights reserved under the copyright laws of the | |
32 * United States. Contractor/manufacturer is Silicon Graphics, | |
33 * Inc., 2011 N. Shoreline Blvd., Mountain View, CA 94039-7311. | |
34 * | |
35 * OpenGL(TM) is a trademark of Silicon Graphics, Inc. | |
36 */ | |
37 #include <GLUT/glut.h> | |
38 #include <math.h> | |
39 #include "atlantis.h" | |
40 /* *INDENT-OFF* */ | |
41 static float N002[3] = {0.000077 ,-0.020611 ,0.999788}; | |
42 static float N003[3] = {0.961425 ,0.258729 ,-0.093390}; | |
43 static float N004[3] = {0.510811 ,-0.769633 ,-0.383063}; | |
44 static float N005[3] = {0.400123 ,0.855734 ,-0.328055}; | |
45 static float N006[3] = {-0.770715 ,0.610204 ,-0.183440}; | |
46 static float N007[3] = {-0.915597 ,-0.373345 ,-0.149316}; | |
47 static float N008[3] = {-0.972788 ,0.208921 ,-0.100179}; | |
48 static float N009[3] = {-0.939713 ,-0.312268 ,-0.139383}; | |
49 static float N010[3] = {-0.624138 ,-0.741047 ,-0.247589}; | |
50 static float N011[3] = {0.591434 ,-0.768401 ,-0.244471}; | |
51 static float N012[3] = {0.935152 ,-0.328495 ,-0.132598}; | |
52 static float N013[3] = {0.997102 ,0.074243 ,-0.016593}; | |
53 static float N014[3] = {0.969995 ,0.241712 ,-0.026186}; | |
54 static float N015[3] = {0.844539 ,0.502628 ,-0.184714}; | |
55 static float N016[3] = {-0.906608 ,0.386308 ,-0.169787}; | |
56 static float N017[3] = {-0.970016 ,0.241698 ,-0.025516}; | |
57 static float N018[3] = {-0.998652 ,0.050493 ,-0.012045}; | |
58 static float N019[3] = {-0.942685 ,-0.333051 ,-0.020556}; | |
59 static float N020[3] = {-0.660944 ,-0.750276 ,0.015480}; | |
60 static float N021[3] = {0.503549 ,-0.862908 ,-0.042749}; | |
61 static float N022[3] = {0.953202 ,-0.302092 ,-0.012089}; | |
62 static float N023[3] = {0.998738 ,0.023574 ,0.044344}; | |
63 static float N024[3] = {0.979297 ,0.193272 ,0.060202}; | |
64 static float N025[3] = {0.798300 ,0.464885 ,0.382883}; | |
65 static float N026[3] = {-0.756590 ,0.452403 ,0.472126}; | |
66 static float N027[3] = {-0.953855 ,0.293003 ,0.065651}; | |
67 static float N028[3] = {-0.998033 ,0.040292 ,0.048028}; | |
68 static float N029[3] = {-0.977079 ,-0.204288 ,0.059858}; | |
69 static float N030[3] = {-0.729117 ,-0.675304 ,0.111140}; | |
70 static float N031[3] = {0.598361 ,-0.792753 ,0.116221}; | |
71 static float N032[3] = {0.965192 ,-0.252991 ,0.066332}; | |
72 static float N033[3] = {0.998201 ,-0.002790 ,0.059892}; | |
73 static float N034[3] = {0.978657 ,0.193135 ,0.070207}; | |
74 static float N035[3] = {0.718815 ,0.680392 ,0.142733}; | |
75 static float N036[3] = {-0.383096 ,0.906212 ,0.178936}; | |
76 static float N037[3] = {-0.952831 ,0.292590 ,0.080647}; | |
77 static float N038[3] = {-0.997680 ,0.032417 ,0.059861}; | |
78 static float N039[3] = {-0.982629 ,-0.169881 ,0.074700}; | |
79 static float N040[3] = {-0.695424 ,-0.703466 ,0.146700}; | |
80 static float N041[3] = {0.359323 ,-0.915531 ,0.180805}; | |
81 static float N042[3] = {0.943356 ,-0.319387 ,0.089842}; | |
82 static float N043[3] = {0.998272 ,-0.032435 ,0.048993}; | |
83 static float N044[3] = {0.978997 ,0.193205 ,0.065084}; | |
84 static float N045[3] = {0.872144 ,0.470094 ,-0.135565}; | |
85 static float N046[3] = {-0.664282 ,0.737945 ,-0.119027}; | |
86 static float N047[3] = {-0.954508 ,0.288570 ,0.075107}; | |
87 static float N048[3] = {-0.998273 ,0.032406 ,0.048993}; | |
88 static float N049[3] = {-0.979908 ,-0.193579 ,0.048038}; | |
89 static float N050[3] = {-0.858736 ,-0.507202 ,-0.072938}; | |
90 static float N051[3] = {0.643545 ,-0.763887 ,-0.048237}; | |
91 static float N052[3] = {0.955580 ,-0.288954 ,0.058068}; | |
92 static float N058[3] = {0.000050 ,0.793007 ,-0.609213}; | |
93 static float N059[3] = {0.913510 ,0.235418 ,-0.331779}; | |
94 static float N060[3] = {-0.807970 ,0.495000 ,-0.319625}; | |
95 static float N061[3] = {0.000000 ,0.784687 ,-0.619892}; | |
96 static float N062[3] = {0.000000 ,-1.000000 ,0.000000}; | |
97 static float N063[3] = {0.000000 ,1.000000 ,0.000000}; | |
98 static float N064[3] = {0.000000 ,1.000000 ,0.000000}; | |
99 static float N065[3] = {0.000000 ,1.000000 ,0.000000}; | |
100 static float N066[3] = {-0.055784 ,0.257059 ,0.964784}; | |
101 static float N069[3] = {-0.000505 ,-0.929775 ,-0.368127}; | |
102 static float N070[3] = {0.000000 ,1.000000 ,0.000000}; | |
103 static float P002[3] = {0.00, -36.59, 5687.72}; | |
104 static float P003[3] = {90.00, 114.73, 724.38}; | |
105 static float P004[3] = {58.24, -146.84, 262.35}; | |
106 static float P005[3] = {27.81, 231.52, 510.43}; | |
107 static float P006[3] = {-27.81, 230.43, 509.76}; | |
108 static float P007[3] = {-46.09, -146.83, 265.84}; | |
109 static float P008[3] = {-90.00, 103.84, 718.53}; | |
110 static float P009[3] = {-131.10, -165.92, 834.85}; | |
111 static float P010[3] = {-27.81, -285.31, 500.00}; | |
112 static float P011[3] = {27.81, -285.32, 500.00}; | |
113 static float P012[3] = {147.96, -170.89, 845.50}; | |
114 static float P013[3] = {180.00, 0.00, 2000.00}; | |
115 static float P014[3] = {145.62, 352.67, 2000.00}; | |
116 static float P015[3] = {55.62, 570.63, 2000.00}; | |
117 static float P016[3] = {-55.62, 570.64, 2000.00}; | |
118 static float P017[3] = {-145.62, 352.68, 2000.00}; | |
119 static float P018[3] = {-180.00, 0.01, 2000.00}; | |
120 static float P019[3] = {-178.20, -352.66, 2001.61}; | |
121 static float P020[3] = {-55.63, -570.63, 2000.00}; | |
122 static float P021[3] = {55.62, -570.64, 2000.00}; | |
123 static float P022[3] = {179.91, -352.69, 1998.39}; | |
124 static float P023[3] = {150.00, 0.00, 3000.00}; | |
125 static float P024[3] = {121.35, 293.89, 3000.00}; | |
126 static float P025[3] = {46.35, 502.93, 2883.09}; | |
127 static float P026[3] = {-46.35, 497.45, 2877.24}; | |
128 static float P027[3] = {-121.35, 293.90, 3000.00}; | |
129 static float P028[3] = {-150.00, 0.00, 3000.00}; | |
130 static float P029[3] = {-152.21, -304.84, 2858.68}; | |
131 static float P030[3] = {-46.36, -475.52, 3000.00}; | |
132 static float P031[3] = {46.35, -475.53, 3000.00}; | |
133 static float P032[3] = {155.64, -304.87, 2863.50}; | |
134 static float P033[3] = {90.00, 0.00, 4000.00}; | |
135 static float P034[3] = {72.81, 176.33, 4000.00}; | |
136 static float P035[3] = {27.81, 285.32, 4000.00}; | |
137 static float P036[3] = {-27.81, 285.32, 4000.00}; | |
138 static float P037[3] = {-72.81, 176.34, 4000.00}; | |
139 static float P038[3] = {-90.00, 0.00, 4000.00}; | |
140 static float P039[3] = {-72.81, -176.33, 4000.00}; | |
141 static float P040[3] = {-27.81, -285.31, 4000.00}; | |
142 static float P041[3] = {27.81, -285.32, 4000.00}; | |
143 static float P042[3] = {72.81, -176.34, 4000.00}; | |
144 static float P043[3] = {30.00, 0.00, 5000.00}; | |
145 static float P044[3] = {24.27, 58.78, 5000.00}; | |
146 static float P045[3] = {9.27, 95.11, 5000.00}; | |
147 static float P046[3] = {-9.27, 95.11, 5000.00}; | |
148 static float P047[3] = {-24.27, 58.78, 5000.00}; | |
149 static float P048[3] = {-30.00, 0.00, 5000.00}; | |
150 static float P049[3] = {-24.27, -58.78, 5000.00}; | |
151 static float P050[3] = {-9.27, -95.10, 5000.00}; | |
152 static float P051[3] = {9.27, -95.11, 5000.00}; | |
153 static float P052[3] = {24.27, -58.78, 5000.00}; | |
154 static float P058[3] = {0.00, 1212.72, 2703.08}; | |
155 static float P059[3] = {50.36, 0.00, 108.14}; | |
156 static float P060[3] = {-22.18, 0.00, 108.14}; | |
157 static float P061[3] = {0.00, 1181.61, 6344.65}; | |
158 static float P062[3] = {516.45, -887.08, 2535.45}; | |
159 static float P063[3] = {-545.69, -879.31, 2555.63}; | |
160 static float P064[3] = {618.89, -1005.64, 2988.32}; | |
161 static float P065[3] = {-635.37, -1014.79, 2938.68}; | |
162 static float P066[3] = {0.00, 1374.43, 3064.18}; | |
163 static float P069[3] = {0.00, -418.25, 5765.04}; | |
164 static float P070[3] = {0.00, 1266.91, 6629.60}; | |
165 static float P071[3] = {-139.12, -124.96, 997.98}; | |
166 static float P072[3] = {-139.24, -110.18, 1020.68}; | |
167 static float P073[3] = {-137.33, -94.52, 1022.63}; | |
168 static float P074[3] = {-137.03, -79.91, 996.89}; | |
169 static float P075[3] = {-135.21, -91.48, 969.14}; | |
170 static float P076[3] = {-135.39, -110.87, 968.76}; | |
171 static float P077[3] = {150.23, -78.44, 995.53}; | |
172 static float P078[3] = {152.79, -92.76, 1018.46}; | |
173 static float P079[3] = {154.19, -110.20, 1020.55}; | |
174 static float P080[3] = {151.33, -124.15, 993.77}; | |
175 static float P081[3] = {150.49, -111.19, 969.86}; | |
176 static float P082[3] = {150.79, -92.41, 969.70}; | |
177 static float iP002[3] = {0.00, -36.59, 5687.72}; | |
178 static float iP004[3] = {58.24, -146.84, 262.35}; | |
179 static float iP007[3] = {-46.09, -146.83, 265.84}; | |
180 static float iP010[3] = {-27.81, -285.31, 500.00}; | |
181 static float iP011[3] = {27.81, -285.32, 500.00}; | |
182 static float iP023[3] = {150.00, 0.00, 3000.00}; | |
183 static float iP024[3] = {121.35, 293.89, 3000.00}; | |
184 static float iP025[3] = {46.35, 502.93, 2883.09}; | |
185 static float iP026[3] = {-46.35, 497.45, 2877.24}; | |
186 static float iP027[3] = {-121.35, 293.90, 3000.00}; | |
187 static float iP028[3] = {-150.00, 0.00, 3000.00}; | |
188 static float iP029[3] = {-121.35, -304.84, 2853.86}; | |
189 static float iP030[3] = {-46.36, -475.52, 3000.00}; | |
190 static float iP031[3] = {46.35, -475.53, 3000.00}; | |
191 static float iP032[3] = {121.35, -304.87, 2853.86}; | |
192 static float iP033[3] = {90.00, 0.00, 4000.00}; | |
193 static float iP034[3] = {72.81, 176.33, 4000.00}; | |
194 static float iP035[3] = {27.81, 285.32, 4000.00}; | |
195 static float iP036[3] = {-27.81, 285.32, 4000.00}; | |
196 static float iP037[3] = {-72.81, 176.34, 4000.00}; | |
197 static float iP038[3] = {-90.00, 0.00, 4000.00}; | |
198 static float iP039[3] = {-72.81, -176.33, 4000.00}; | |
199 static float iP040[3] = {-27.81, -285.31, 4000.00}; | |
200 static float iP041[3] = {27.81, -285.32, 4000.00}; | |
201 static float iP042[3] = {72.81, -176.34, 4000.00}; | |
202 static float iP043[3] = {30.00, 0.00, 5000.00}; | |
203 static float iP044[3] = {24.27, 58.78, 5000.00}; | |
204 static float iP045[3] = {9.27, 95.11, 5000.00}; | |
205 static float iP046[3] = {-9.27, 95.11, 5000.00}; | |
206 static float iP047[3] = {-24.27, 58.78, 5000.00}; | |
207 static float iP048[3] = {-30.00, 0.00, 5000.00}; | |
208 static float iP049[3] = {-24.27, -58.78, 5000.00}; | |
209 static float iP050[3] = {-9.27, -95.10, 5000.00}; | |
210 static float iP051[3] = {9.27, -95.11, 5000.00}; | |
211 static float iP052[3] = {24.27, -58.78, 5000.00}; | |
212 static float iP061[3] = {0.00, 1181.61, 6344.65}; | |
213 static float iP069[3] = {0.00, -418.25, 5765.04}; | |
214 static float iP070[3] = {0.00, 1266.91, 6629.60}; | |
215 /* *INDENT-ON* */ | |
216 | |
217 void | |
218 Fish001(void) | |
219 { | |
220 glBegin(GL_POLYGON); | |
221 glNormal3fv(N005); | |
222 glVertex3fv(P005); | |
223 glNormal3fv(N059); | |
224 glVertex3fv(P059); | |
225 glNormal3fv(N060); | |
226 glVertex3fv(P060); | |
227 glNormal3fv(N006); | |
228 glVertex3fv(P006); | |
229 glEnd(); | |
230 glBegin(GL_POLYGON); | |
231 glNormal3fv(N015); | |
232 glVertex3fv(P015); | |
233 glNormal3fv(N005); | |
234 glVertex3fv(P005); | |
235 glNormal3fv(N006); | |
236 glVertex3fv(P006); | |
237 glNormal3fv(N016); | |
238 glVertex3fv(P016); | |
239 glEnd(); | |
240 glBegin(GL_POLYGON); | |
241 glNormal3fv(N006); | |
242 glVertex3fv(P006); | |
243 glNormal3fv(N060); | |
244 glVertex3fv(P060); | |
245 glNormal3fv(N008); | |
246 glVertex3fv(P008); | |
247 glEnd(); | |
248 glBegin(GL_POLYGON); | |
249 glNormal3fv(N016); | |
250 glVertex3fv(P016); | |
251 glNormal3fv(N006); | |
252 glVertex3fv(P006); | |
253 glNormal3fv(N008); | |
254 glVertex3fv(P008); | |
255 glEnd(); | |
256 glBegin(GL_POLYGON); | |
257 glNormal3fv(N016); | |
258 glVertex3fv(P016); | |
259 glNormal3fv(N008); | |
260 glVertex3fv(P008); | |
261 glNormal3fv(N017); | |
262 glVertex3fv(P017); | |
263 glEnd(); | |
264 glBegin(GL_POLYGON); | |
265 glNormal3fv(N017); | |
266 glVertex3fv(P017); | |
267 glNormal3fv(N008); | |
268 glVertex3fv(P008); | |
269 glNormal3fv(N018); | |
270 glVertex3fv(P018); | |
271 glEnd(); | |
272 glBegin(GL_POLYGON); | |
273 glNormal3fv(N008); | |
274 glVertex3fv(P008); | |
275 glNormal3fv(N009); | |
276 glVertex3fv(P009); | |
277 glNormal3fv(N018); | |
278 glVertex3fv(P018); | |
279 glEnd(); | |
280 glBegin(GL_POLYGON); | |
281 glNormal3fv(N008); | |
282 glVertex3fv(P008); | |
283 glNormal3fv(N060); | |
284 glVertex3fv(P060); | |
285 glNormal3fv(N009); | |
286 glVertex3fv(P009); | |
287 glEnd(); | |
288 glBegin(GL_POLYGON); | |
289 glNormal3fv(N007); | |
290 glVertex3fv(P007); | |
291 glNormal3fv(N010); | |
292 glVertex3fv(P010); | |
293 glNormal3fv(N009); | |
294 glVertex3fv(P009); | |
295 glEnd(); | |
296 glBegin(GL_POLYGON); | |
297 glNormal3fv(N009); | |
298 glVertex3fv(P009); | |
299 glNormal3fv(N019); | |
300 glVertex3fv(P019); | |
301 glNormal3fv(N018); | |
302 glVertex3fv(P018); | |
303 glEnd(); | |
304 glBegin(GL_POLYGON); | |
305 glNormal3fv(N009); | |
306 glVertex3fv(P009); | |
307 glNormal3fv(N010); | |
308 glVertex3fv(P010); | |
309 glNormal3fv(N019); | |
310 glVertex3fv(P019); | |
311 glEnd(); | |
312 glBegin(GL_POLYGON); | |
313 glNormal3fv(N010); | |
314 glVertex3fv(P010); | |
315 glNormal3fv(N020); | |
316 glVertex3fv(P020); | |
317 glNormal3fv(N019); | |
318 glVertex3fv(P019); | |
319 glEnd(); | |
320 glBegin(GL_POLYGON); | |
321 glNormal3fv(N010); | |
322 glVertex3fv(P010); | |
323 glNormal3fv(N011); | |
324 glVertex3fv(P011); | |
325 glNormal3fv(N021); | |
326 glVertex3fv(P021); | |
327 glNormal3fv(N020); | |
328 glVertex3fv(P020); | |
329 glEnd(); | |
330 glBegin(GL_POLYGON); | |
331 glNormal3fv(N004); | |
332 glVertex3fv(P004); | |
333 glNormal3fv(N011); | |
334 glVertex3fv(P011); | |
335 glNormal3fv(N010); | |
336 glVertex3fv(P010); | |
337 glNormal3fv(N007); | |
338 glVertex3fv(P007); | |
339 glEnd(); | |
340 glBegin(GL_POLYGON); | |
341 glNormal3fv(N004); | |
342 glVertex3fv(P004); | |
343 glNormal3fv(N012); | |
344 glVertex3fv(P012); | |
345 glNormal3fv(N011); | |
346 glVertex3fv(P011); | |
347 glEnd(); | |
348 glBegin(GL_POLYGON); | |
349 glNormal3fv(N012); | |
350 glVertex3fv(P012); | |
351 glNormal3fv(N022); | |
352 glVertex3fv(P022); | |
353 glNormal3fv(N011); | |
354 glVertex3fv(P011); | |
355 glEnd(); | |
356 glBegin(GL_POLYGON); | |
357 glNormal3fv(N011); | |
358 glVertex3fv(P011); | |
359 glNormal3fv(N022); | |
360 glVertex3fv(P022); | |
361 glNormal3fv(N021); | |
362 glVertex3fv(P021); | |
363 glEnd(); | |
364 glBegin(GL_POLYGON); | |
365 glNormal3fv(N059); | |
366 glVertex3fv(P059); | |
367 glNormal3fv(N005); | |
368 glVertex3fv(P005); | |
369 glNormal3fv(N015); | |
370 glVertex3fv(P015); | |
371 glEnd(); | |
372 glBegin(GL_POLYGON); | |
373 glNormal3fv(N015); | |
374 glVertex3fv(P015); | |
375 glNormal3fv(N014); | |
376 glVertex3fv(P014); | |
377 glNormal3fv(N003); | |
378 glVertex3fv(P003); | |
379 glEnd(); | |
380 glBegin(GL_POLYGON); | |
381 glNormal3fv(N015); | |
382 glVertex3fv(P015); | |
383 glNormal3fv(N003); | |
384 glVertex3fv(P003); | |
385 glNormal3fv(N059); | |
386 glVertex3fv(P059); | |
387 glEnd(); | |
388 glBegin(GL_POLYGON); | |
389 glNormal3fv(N014); | |
390 glVertex3fv(P014); | |
391 glNormal3fv(N013); | |
392 glVertex3fv(P013); | |
393 glNormal3fv(N003); | |
394 glVertex3fv(P003); | |
395 glEnd(); | |
396 glBegin(GL_POLYGON); | |
397 glNormal3fv(N003); | |
398 glVertex3fv(P003); | |
399 glNormal3fv(N012); | |
400 glVertex3fv(P012); | |
401 glNormal3fv(N059); | |
402 glVertex3fv(P059); | |
403 glEnd(); | |
404 glBegin(GL_POLYGON); | |
405 glNormal3fv(N013); | |
406 glVertex3fv(P013); | |
407 glNormal3fv(N012); | |
408 glVertex3fv(P012); | |
409 glNormal3fv(N003); | |
410 glVertex3fv(P003); | |
411 glEnd(); | |
412 glBegin(GL_POLYGON); | |
413 glNormal3fv(N013); | |
414 glVertex3fv(P013); | |
415 glNormal3fv(N022); | |
416 glVertex3fv(P022); | |
417 glNormal3fv(N012); | |
418 glVertex3fv(P012); | |
419 glEnd(); | |
420 glBegin(GL_POLYGON); | |
421 glVertex3fv(P071); | |
422 glVertex3fv(P072); | |
423 glVertex3fv(P073); | |
424 glVertex3fv(P074); | |
425 glVertex3fv(P075); | |
426 glVertex3fv(P076); | |
427 glEnd(); | |
428 glBegin(GL_POLYGON); | |
429 glVertex3fv(P077); | |
430 glVertex3fv(P078); | |
431 glVertex3fv(P079); | |
432 glVertex3fv(P080); | |
433 glVertex3fv(P081); | |
434 glVertex3fv(P082); | |
435 glEnd(); | |
436 } | |
437 | |
438 void | |
439 Fish002(void) | |
440 { | |
441 glBegin(GL_POLYGON); | |
442 glNormal3fv(N013); | |
443 glVertex3fv(P013); | |
444 glNormal3fv(N014); | |
445 glVertex3fv(P014); | |
446 glNormal3fv(N024); | |
447 glVertex3fv(P024); | |
448 glNormal3fv(N023); | |
449 glVertex3fv(P023); | |
450 glEnd(); | |
451 glBegin(GL_POLYGON); | |
452 glNormal3fv(N014); | |
453 glVertex3fv(P014); | |
454 glNormal3fv(N015); | |
455 glVertex3fv(P015); | |
456 glNormal3fv(N025); | |
457 glVertex3fv(P025); | |
458 glNormal3fv(N024); | |
459 glVertex3fv(P024); | |
460 glEnd(); | |
461 glBegin(GL_POLYGON); | |
462 glNormal3fv(N016); | |
463 glVertex3fv(P016); | |
464 glNormal3fv(N017); | |
465 glVertex3fv(P017); | |
466 glNormal3fv(N027); | |
467 glVertex3fv(P027); | |
468 glNormal3fv(N026); | |
469 glVertex3fv(P026); | |
470 glEnd(); | |
471 glBegin(GL_POLYGON); | |
472 glNormal3fv(N017); | |
473 glVertex3fv(P017); | |
474 glNormal3fv(N018); | |
475 glVertex3fv(P018); | |
476 glNormal3fv(N028); | |
477 glVertex3fv(P028); | |
478 glNormal3fv(N027); | |
479 glVertex3fv(P027); | |
480 glEnd(); | |
481 glBegin(GL_POLYGON); | |
482 glNormal3fv(N020); | |
483 glVertex3fv(P020); | |
484 glNormal3fv(N021); | |
485 glVertex3fv(P021); | |
486 glNormal3fv(N031); | |
487 glVertex3fv(P031); | |
488 glNormal3fv(N030); | |
489 glVertex3fv(P030); | |
490 glEnd(); | |
491 glBegin(GL_POLYGON); | |
492 glNormal3fv(N013); | |
493 glVertex3fv(P013); | |
494 glNormal3fv(N023); | |
495 glVertex3fv(P023); | |
496 glNormal3fv(N022); | |
497 glVertex3fv(P022); | |
498 glEnd(); | |
499 glBegin(GL_POLYGON); | |
500 glNormal3fv(N022); | |
501 glVertex3fv(P022); | |
502 glNormal3fv(N023); | |
503 glVertex3fv(P023); | |
504 glNormal3fv(N032); | |
505 glVertex3fv(P032); | |
506 glEnd(); | |
507 glBegin(GL_POLYGON); | |
508 glNormal3fv(N022); | |
509 glVertex3fv(P022); | |
510 glNormal3fv(N032); | |
511 glVertex3fv(P032); | |
512 glNormal3fv(N031); | |
513 glVertex3fv(P031); | |
514 glEnd(); | |
515 glBegin(GL_POLYGON); | |
516 glNormal3fv(N022); | |
517 glVertex3fv(P022); | |
518 glNormal3fv(N031); | |
519 glVertex3fv(P031); | |
520 glNormal3fv(N021); | |
521 glVertex3fv(P021); | |
522 glEnd(); | |
523 glBegin(GL_POLYGON); | |
524 glNormal3fv(N018); | |
525 glVertex3fv(P018); | |
526 glNormal3fv(N019); | |
527 glVertex3fv(P019); | |
528 glNormal3fv(N029); | |
529 glVertex3fv(P029); | |
530 glEnd(); | |
531 glBegin(GL_POLYGON); | |
532 glNormal3fv(N018); | |
533 glVertex3fv(P018); | |
534 glNormal3fv(N029); | |
535 glVertex3fv(P029); | |
536 glNormal3fv(N028); | |
537 glVertex3fv(P028); | |
538 glEnd(); | |
539 glBegin(GL_POLYGON); | |
540 glNormal3fv(N019); | |
541 glVertex3fv(P019); | |
542 glNormal3fv(N020); | |
543 glVertex3fv(P020); | |
544 glNormal3fv(N030); | |
545 glVertex3fv(P030); | |
546 glEnd(); | |
547 glBegin(GL_POLYGON); | |
548 glNormal3fv(N019); | |
549 glVertex3fv(P019); | |
550 glNormal3fv(N030); | |
551 glVertex3fv(P030); | |
552 glNormal3fv(N029); | |
553 glVertex3fv(P029); | |
554 glEnd(); | |
555 } | |
556 | |
557 void | |
558 Fish003(void) | |
559 { | |
560 glBegin(GL_POLYGON); | |
561 glNormal3fv(N032); | |
562 glVertex3fv(P032); | |
563 glNormal3fv(N023); | |
564 glVertex3fv(P023); | |
565 glNormal3fv(N033); | |
566 glVertex3fv(P033); | |
567 glNormal3fv(N042); | |
568 glVertex3fv(P042); | |
569 glEnd(); | |
570 glBegin(GL_POLYGON); | |
571 glNormal3fv(N031); | |
572 glVertex3fv(P031); | |
573 glNormal3fv(N032); | |
574 glVertex3fv(P032); | |
575 glNormal3fv(N042); | |
576 glVertex3fv(P042); | |
577 glNormal3fv(N041); | |
578 glVertex3fv(P041); | |
579 glEnd(); | |
580 glBegin(GL_POLYGON); | |
581 glNormal3fv(N023); | |
582 glVertex3fv(P023); | |
583 glNormal3fv(N024); | |
584 glVertex3fv(P024); | |
585 glNormal3fv(N034); | |
586 glVertex3fv(P034); | |
587 glNormal3fv(N033); | |
588 glVertex3fv(P033); | |
589 glEnd(); | |
590 glBegin(GL_POLYGON); | |
591 glNormal3fv(N024); | |
592 glVertex3fv(P024); | |
593 glNormal3fv(N025); | |
594 glVertex3fv(P025); | |
595 glNormal3fv(N035); | |
596 glVertex3fv(P035); | |
597 glNormal3fv(N034); | |
598 glVertex3fv(P034); | |
599 glEnd(); | |
600 glBegin(GL_POLYGON); | |
601 glNormal3fv(N030); | |
602 glVertex3fv(P030); | |
603 glNormal3fv(N031); | |
604 glVertex3fv(P031); | |
605 glNormal3fv(N041); | |
606 glVertex3fv(P041); | |
607 glNormal3fv(N040); | |
608 glVertex3fv(P040); | |
609 glEnd(); | |
610 glBegin(GL_POLYGON); | |
611 glNormal3fv(N025); | |
612 glVertex3fv(P025); | |
613 glNormal3fv(N026); | |
614 glVertex3fv(P026); | |
615 glNormal3fv(N036); | |
616 glVertex3fv(P036); | |
617 glNormal3fv(N035); | |
618 glVertex3fv(P035); | |
619 glEnd(); | |
620 glBegin(GL_POLYGON); | |
621 glNormal3fv(N026); | |
622 glVertex3fv(P026); | |
623 glNormal3fv(N027); | |
624 glVertex3fv(P027); | |
625 glNormal3fv(N037); | |
626 glVertex3fv(P037); | |
627 glNormal3fv(N036); | |
628 glVertex3fv(P036); | |
629 glEnd(); | |
630 glBegin(GL_POLYGON); | |
631 glNormal3fv(N027); | |
632 glVertex3fv(P027); | |
633 glNormal3fv(N028); | |
634 glVertex3fv(P028); | |
635 glNormal3fv(N038); | |
636 glVertex3fv(P038); | |
637 glNormal3fv(N037); | |
638 glVertex3fv(P037); | |
639 glEnd(); | |
640 glBegin(GL_POLYGON); | |
641 glNormal3fv(N028); | |
642 glVertex3fv(P028); | |
643 glNormal3fv(N029); | |
644 glVertex3fv(P029); | |
645 glNormal3fv(N039); | |
646 glVertex3fv(P039); | |
647 glNormal3fv(N038); | |
648 glVertex3fv(P038); | |
649 glEnd(); | |
650 glBegin(GL_POLYGON); | |
651 glNormal3fv(N029); | |
652 glVertex3fv(P029); | |
653 glNormal3fv(N030); | |
654 glVertex3fv(P030); | |
655 glNormal3fv(N040); | |
656 glVertex3fv(P040); | |
657 glNormal3fv(N039); | |
658 glVertex3fv(P039); | |
659 glEnd(); | |
660 } | |
661 | |
662 void | |
663 Fish004(void) | |
664 { | |
665 glBegin(GL_POLYGON); | |
666 glNormal3fv(N040); | |
667 glVertex3fv(P040); | |
668 glNormal3fv(N041); | |
669 glVertex3fv(P041); | |
670 glNormal3fv(N051); | |
671 glVertex3fv(P051); | |
672 glNormal3fv(N050); | |
673 glVertex3fv(P050); | |
674 glEnd(); | |
675 glBegin(GL_POLYGON); | |
676 glNormal3fv(N041); | |
677 glVertex3fv(P041); | |
678 glNormal3fv(N042); | |
679 glVertex3fv(P042); | |
680 glNormal3fv(N052); | |
681 glVertex3fv(P052); | |
682 glNormal3fv(N051); | |
683 glVertex3fv(P051); | |
684 glEnd(); | |
685 glBegin(GL_POLYGON); | |
686 glNormal3fv(N042); | |
687 glVertex3fv(P042); | |
688 glNormal3fv(N033); | |
689 glVertex3fv(P033); | |
690 glNormal3fv(N043); | |
691 glVertex3fv(P043); | |
692 glNormal3fv(N052); | |
693 glVertex3fv(P052); | |
694 glEnd(); | |
695 glBegin(GL_POLYGON); | |
696 glNormal3fv(N033); | |
697 glVertex3fv(P033); | |
698 glNormal3fv(N034); | |
699 glVertex3fv(P034); | |
700 glNormal3fv(N044); | |
701 glVertex3fv(P044); | |
702 glNormal3fv(N043); | |
703 glVertex3fv(P043); | |
704 glEnd(); | |
705 glBegin(GL_POLYGON); | |
706 glNormal3fv(N034); | |
707 glVertex3fv(P034); | |
708 glNormal3fv(N035); | |
709 glVertex3fv(P035); | |
710 glNormal3fv(N045); | |
711 glVertex3fv(P045); | |
712 glNormal3fv(N044); | |
713 glVertex3fv(P044); | |
714 glEnd(); | |
715 glBegin(GL_POLYGON); | |
716 glNormal3fv(N035); | |
717 glVertex3fv(P035); | |
718 glNormal3fv(N036); | |
719 glVertex3fv(P036); | |
720 glNormal3fv(N046); | |
721 glVertex3fv(P046); | |
722 glNormal3fv(N045); | |
723 glVertex3fv(P045); | |
724 glEnd(); | |
725 glBegin(GL_POLYGON); | |
726 glNormal3fv(N036); | |
727 glVertex3fv(P036); | |
728 glNormal3fv(N037); | |
729 glVertex3fv(P037); | |
730 glNormal3fv(N047); | |
731 glVertex3fv(P047); | |
732 glNormal3fv(N046); | |
733 glVertex3fv(P046); | |
734 glEnd(); | |
735 glBegin(GL_POLYGON); | |
736 glNormal3fv(N037); | |
737 glVertex3fv(P037); | |
738 glNormal3fv(N038); | |
739 glVertex3fv(P038); | |
740 glNormal3fv(N048); | |
741 glVertex3fv(P048); | |
742 glNormal3fv(N047); | |
743 glVertex3fv(P047); | |
744 glEnd(); | |
745 glBegin(GL_POLYGON); | |
746 glNormal3fv(N038); | |
747 glVertex3fv(P038); | |
748 glNormal3fv(N039); | |
749 glVertex3fv(P039); | |
750 glNormal3fv(N049); | |
751 glVertex3fv(P049); | |
752 glNormal3fv(N048); | |
753 glVertex3fv(P048); | |
754 glEnd(); | |
755 glBegin(GL_POLYGON); | |
756 glNormal3fv(N039); | |
757 glVertex3fv(P039); | |
758 glNormal3fv(N040); | |
759 glVertex3fv(P040); | |
760 glNormal3fv(N050); | |
761 glVertex3fv(P050); | |
762 glNormal3fv(N049); | |
763 glVertex3fv(P049); | |
764 glEnd(); | |
765 glBegin(GL_POLYGON); | |
766 glNormal3fv(N070); | |
767 glVertex3fv(P070); | |
768 glNormal3fv(N061); | |
769 glVertex3fv(P061); | |
770 glNormal3fv(N002); | |
771 glVertex3fv(P002); | |
772 glEnd(); | |
773 glBegin(GL_POLYGON); | |
774 glNormal3fv(N061); | |
775 glVertex3fv(P061); | |
776 glNormal3fv(N046); | |
777 glVertex3fv(P046); | |
778 glNormal3fv(N002); | |
779 glVertex3fv(P002); | |
780 glEnd(); | |
781 glBegin(GL_POLYGON); | |
782 glNormal3fv(N045); | |
783 glVertex3fv(P045); | |
784 glNormal3fv(N046); | |
785 glVertex3fv(P046); | |
786 glNormal3fv(N061); | |
787 glVertex3fv(P061); | |
788 glEnd(); | |
789 glBegin(GL_POLYGON); | |
790 glNormal3fv(N002); | |
791 glVertex3fv(P002); | |
792 glNormal3fv(N061); | |
793 glVertex3fv(P061); | |
794 glNormal3fv(N070); | |
795 glVertex3fv(P070); | |
796 glEnd(); | |
797 glBegin(GL_POLYGON); | |
798 glNormal3fv(N002); | |
799 glVertex3fv(P002); | |
800 glNormal3fv(N045); | |
801 glVertex3fv(P045); | |
802 glNormal3fv(N061); | |
803 glVertex3fv(P061); | |
804 glEnd(); | |
805 } | |
806 | |
807 void | |
808 Fish005(void) | |
809 { | |
810 glBegin(GL_POLYGON); | |
811 glNormal3fv(N002); | |
812 glVertex3fv(P002); | |
813 glNormal3fv(N044); | |
814 glVertex3fv(P044); | |
815 glNormal3fv(N045); | |
816 glVertex3fv(P045); | |
817 glEnd(); | |
818 glBegin(GL_POLYGON); | |
819 glNormal3fv(N002); | |
820 glVertex3fv(P002); | |
821 glNormal3fv(N043); | |
822 glVertex3fv(P043); | |
823 glNormal3fv(N044); | |
824 glVertex3fv(P044); | |
825 glEnd(); | |
826 glBegin(GL_POLYGON); | |
827 glNormal3fv(N002); | |
828 glVertex3fv(P002); | |
829 glNormal3fv(N052); | |
830 glVertex3fv(P052); | |
831 glNormal3fv(N043); | |
832 glVertex3fv(P043); | |
833 glEnd(); | |
834 glBegin(GL_POLYGON); | |
835 glNormal3fv(N002); | |
836 glVertex3fv(P002); | |
837 glNormal3fv(N051); | |
838 glVertex3fv(P051); | |
839 glNormal3fv(N052); | |
840 glVertex3fv(P052); | |
841 glEnd(); | |
842 glBegin(GL_POLYGON); | |
843 glNormal3fv(N002); | |
844 glVertex3fv(P002); | |
845 glNormal3fv(N046); | |
846 glVertex3fv(P046); | |
847 glNormal3fv(N047); | |
848 glVertex3fv(P047); | |
849 glEnd(); | |
850 glBegin(GL_POLYGON); | |
851 glNormal3fv(N002); | |
852 glVertex3fv(P002); | |
853 glNormal3fv(N047); | |
854 glVertex3fv(P047); | |
855 glNormal3fv(N048); | |
856 glVertex3fv(P048); | |
857 glEnd(); | |
858 glBegin(GL_POLYGON); | |
859 glNormal3fv(N002); | |
860 glVertex3fv(P002); | |
861 glNormal3fv(N048); | |
862 glVertex3fv(P048); | |
863 glNormal3fv(N049); | |
864 glVertex3fv(P049); | |
865 glEnd(); | |
866 glBegin(GL_POLYGON); | |
867 glNormal3fv(N002); | |
868 glVertex3fv(P002); | |
869 glNormal3fv(N049); | |
870 glVertex3fv(P049); | |
871 glNormal3fv(N050); | |
872 glVertex3fv(P050); | |
873 glEnd(); | |
874 glBegin(GL_POLYGON); | |
875 glNormal3fv(N050); | |
876 glVertex3fv(P050); | |
877 glNormal3fv(N051); | |
878 glVertex3fv(P051); | |
879 glNormal3fv(N069); | |
880 glVertex3fv(P069); | |
881 glEnd(); | |
882 glBegin(GL_POLYGON); | |
883 glNormal3fv(N051); | |
884 glVertex3fv(P051); | |
885 glNormal3fv(N002); | |
886 glVertex3fv(P002); | |
887 glNormal3fv(N069); | |
888 glVertex3fv(P069); | |
889 glEnd(); | |
890 glBegin(GL_POLYGON); | |
891 glNormal3fv(N050); | |
892 glVertex3fv(P050); | |
893 glNormal3fv(N069); | |
894 glVertex3fv(P069); | |
895 glNormal3fv(N002); | |
896 glVertex3fv(P002); | |
897 glEnd(); | |
898 } | |
899 | |
900 void | |
901 Fish006(void) | |
902 { | |
903 glBegin(GL_POLYGON); | |
904 glNormal3fv(N066); | |
905 glVertex3fv(P066); | |
906 glNormal3fv(N016); | |
907 glVertex3fv(P016); | |
908 glNormal3fv(N026); | |
909 glVertex3fv(P026); | |
910 glEnd(); | |
911 glBegin(GL_POLYGON); | |
912 glNormal3fv(N015); | |
913 glVertex3fv(P015); | |
914 glNormal3fv(N066); | |
915 glVertex3fv(P066); | |
916 glNormal3fv(N025); | |
917 glVertex3fv(P025); | |
918 glEnd(); | |
919 glBegin(GL_POLYGON); | |
920 glNormal3fv(N025); | |
921 glVertex3fv(P025); | |
922 glNormal3fv(N066); | |
923 glVertex3fv(P066); | |
924 glNormal3fv(N026); | |
925 glVertex3fv(P026); | |
926 glEnd(); | |
927 glBegin(GL_POLYGON); | |
928 glNormal3fv(N066); | |
929 glVertex3fv(P066); | |
930 glNormal3fv(N058); | |
931 glVertex3fv(P058); | |
932 glNormal3fv(N016); | |
933 glVertex3fv(P016); | |
934 glEnd(); | |
935 glBegin(GL_POLYGON); | |
936 glNormal3fv(N015); | |
937 glVertex3fv(P015); | |
938 glNormal3fv(N058); | |
939 glVertex3fv(P058); | |
940 glNormal3fv(N066); | |
941 glVertex3fv(P066); | |
942 glEnd(); | |
943 glBegin(GL_POLYGON); | |
944 glNormal3fv(N058); | |
945 glVertex3fv(P058); | |
946 glNormal3fv(N015); | |
947 glVertex3fv(P015); | |
948 glNormal3fv(N016); | |
949 glVertex3fv(P016); | |
950 glEnd(); | |
951 } | |
952 | |
953 void | |
954 Fish007(void) | |
955 { | |
956 glBegin(GL_POLYGON); | |
957 glNormal3fv(N062); | |
958 glVertex3fv(P062); | |
959 glNormal3fv(N022); | |
960 glVertex3fv(P022); | |
961 glNormal3fv(N032); | |
962 glVertex3fv(P032); | |
963 glEnd(); | |
964 glBegin(GL_POLYGON); | |
965 glNormal3fv(N062); | |
966 glVertex3fv(P062); | |
967 glNormal3fv(N032); | |
968 glVertex3fv(P032); | |
969 glNormal3fv(N064); | |
970 glVertex3fv(P064); | |
971 glEnd(); | |
972 glBegin(GL_POLYGON); | |
973 glNormal3fv(N022); | |
974 glVertex3fv(P022); | |
975 glNormal3fv(N062); | |
976 glVertex3fv(P062); | |
977 glNormal3fv(N032); | |
978 glVertex3fv(P032); | |
979 glEnd(); | |
980 glBegin(GL_POLYGON); | |
981 glNormal3fv(N062); | |
982 glVertex3fv(P062); | |
983 glNormal3fv(N064); | |
984 glVertex3fv(P064); | |
985 glNormal3fv(N032); | |
986 glVertex3fv(P032); | |
987 glEnd(); | |
988 } | |
989 | |
990 void | |
991 Fish008(void) | |
992 { | |
993 glBegin(GL_POLYGON); | |
994 glNormal3fv(N063); | |
995 glVertex3fv(P063); | |
996 glNormal3fv(N019); | |
997 glVertex3fv(P019); | |
998 glNormal3fv(N029); | |
999 glVertex3fv(P029); | |
1000 glEnd(); | |
1001 glBegin(GL_POLYGON); | |
1002 glNormal3fv(N019); | |
1003 glVertex3fv(P019); | |
1004 glNormal3fv(N063); | |
1005 glVertex3fv(P063); | |
1006 glNormal3fv(N029); | |
1007 glVertex3fv(P029); | |
1008 glEnd(); | |
1009 glBegin(GL_POLYGON); | |
1010 glNormal3fv(N063); | |
1011 glVertex3fv(P063); | |
1012 glNormal3fv(N029); | |
1013 glVertex3fv(P029); | |
1014 glNormal3fv(N065); | |
1015 glVertex3fv(P065); | |
1016 glEnd(); | |
1017 glBegin(GL_POLYGON); | |
1018 glNormal3fv(N063); | |
1019 glVertex3fv(P063); | |
1020 glNormal3fv(N065); | |
1021 glVertex3fv(P065); | |
1022 glNormal3fv(N029); | |
1023 glVertex3fv(P029); | |
1024 glEnd(); | |
1025 } | |
1026 | |
1027 void | |
1028 Fish009(void) | |
1029 { | |
1030 glBegin(GL_POLYGON); | |
1031 glVertex3fv(P059); | |
1032 glVertex3fv(P012); | |
1033 glVertex3fv(P009); | |
1034 glVertex3fv(P060); | |
1035 glEnd(); | |
1036 glBegin(GL_POLYGON); | |
1037 glVertex3fv(P012); | |
1038 glVertex3fv(P004); | |
1039 glVertex3fv(P007); | |
1040 glVertex3fv(P009); | |
1041 glEnd(); | |
1042 } | |
1043 | |
1044 void | |
1045 Fish_1(void) | |
1046 { | |
1047 Fish004(); | |
1048 Fish005(); | |
1049 Fish003(); | |
1050 Fish007(); | |
1051 Fish006(); | |
1052 Fish002(); | |
1053 Fish008(); | |
1054 Fish009(); | |
1055 Fish001(); | |
1056 } | |
1057 | |
1058 void | |
1059 Fish_2(void) | |
1060 { | |
1061 Fish005(); | |
1062 Fish004(); | |
1063 Fish003(); | |
1064 Fish008(); | |
1065 Fish006(); | |
1066 Fish002(); | |
1067 Fish007(); | |
1068 Fish009(); | |
1069 Fish001(); | |
1070 } | |
1071 | |
1072 void | |
1073 Fish_3(void) | |
1074 { | |
1075 Fish005(); | |
1076 Fish004(); | |
1077 Fish007(); | |
1078 Fish003(); | |
1079 Fish002(); | |
1080 Fish008(); | |
1081 Fish009(); | |
1082 Fish001(); | |
1083 Fish006(); | |
1084 } | |
1085 | |
1086 void | |
1087 Fish_4(void) | |
1088 { | |
1089 Fish005(); | |
1090 Fish004(); | |
1091 Fish008(); | |
1092 Fish003(); | |
1093 Fish002(); | |
1094 Fish007(); | |
1095 Fish009(); | |
1096 Fish001(); | |
1097 Fish006(); | |
1098 } | |
1099 | |
1100 void | |
1101 Fish_5(void) | |
1102 { | |
1103 Fish009(); | |
1104 Fish006(); | |
1105 Fish007(); | |
1106 Fish001(); | |
1107 Fish002(); | |
1108 Fish003(); | |
1109 Fish008(); | |
1110 Fish004(); | |
1111 Fish005(); | |
1112 } | |
1113 | |
1114 void | |
1115 Fish_6(void) | |
1116 { | |
1117 Fish009(); | |
1118 Fish006(); | |
1119 Fish008(); | |
1120 Fish001(); | |
1121 Fish002(); | |
1122 Fish007(); | |
1123 Fish003(); | |
1124 Fish004(); | |
1125 Fish005(); | |
1126 } | |
1127 | |
1128 void | |
1129 Fish_7(void) | |
1130 { | |
1131 Fish009(); | |
1132 Fish001(); | |
1133 Fish007(); | |
1134 Fish005(); | |
1135 Fish002(); | |
1136 Fish008(); | |
1137 Fish003(); | |
1138 Fish004(); | |
1139 Fish006(); | |
1140 } | |
1141 | |
1142 void | |
1143 Fish_8(void) | |
1144 { | |
1145 Fish009(); | |
1146 Fish008(); | |
1147 Fish001(); | |
1148 Fish002(); | |
1149 Fish007(); | |
1150 Fish003(); | |
1151 Fish005(); | |
1152 Fish004(); | |
1153 Fish006(); | |
1154 } | |
1155 | |
1156 void | |
1157 DrawShark(fishRec * fish) | |
1158 { | |
1159 float mat[4][4]; | |
1160 int n; | |
1161 float seg1, seg2, seg3, seg4, segup; | |
1162 float thrash, chomp; | |
1163 | |
1164 fish->htail = (int) (fish->htail - (int) (5.0 * fish->v)) % 360; | |
1165 | |
1166 thrash = 50.0 * fish->v; | |
1167 | |
1168 seg1 = 0.6 * thrash * sin(fish->htail * RRAD); | |
1169 seg2 = 1.8 * thrash * sin((fish->htail + 45.0) * RRAD); | |
1170 seg3 = 3.0 * thrash * sin((fish->htail + 90.0) * RRAD); | |
1171 seg4 = 4.0 * thrash * sin((fish->htail + 110.0) * RRAD); | |
1172 | |
1173 chomp = 0.0; | |
1174 if (fish->v > 2.0) { | |
1175 chomp = -(fish->v - 2.0) * 200.0; | |
1176 } | |
1177 P004[1] = iP004[1] + chomp; | |
1178 P007[1] = iP007[1] + chomp; | |
1179 P010[1] = iP010[1] + chomp; | |
1180 P011[1] = iP011[1] + chomp; | |
1181 | |
1182 P023[0] = iP023[0] + seg1; | |
1183 P024[0] = iP024[0] + seg1; | |
1184 P025[0] = iP025[0] + seg1; | |
1185 P026[0] = iP026[0] + seg1; | |
1186 P027[0] = iP027[0] + seg1; | |
1187 P028[0] = iP028[0] + seg1; | |
1188 P029[0] = iP029[0] + seg1; | |
1189 P030[0] = iP030[0] + seg1; | |
1190 P031[0] = iP031[0] + seg1; | |
1191 P032[0] = iP032[0] + seg1; | |
1192 P033[0] = iP033[0] + seg2; | |
1193 P034[0] = iP034[0] + seg2; | |
1194 P035[0] = iP035[0] + seg2; | |
1195 P036[0] = iP036[0] + seg2; | |
1196 P037[0] = iP037[0] + seg2; | |
1197 P038[0] = iP038[0] + seg2; | |
1198 P039[0] = iP039[0] + seg2; | |
1199 P040[0] = iP040[0] + seg2; | |
1200 P041[0] = iP041[0] + seg2; | |
1201 P042[0] = iP042[0] + seg2; | |
1202 P043[0] = iP043[0] + seg3; | |
1203 P044[0] = iP044[0] + seg3; | |
1204 P045[0] = iP045[0] + seg3; | |
1205 P046[0] = iP046[0] + seg3; | |
1206 P047[0] = iP047[0] + seg3; | |
1207 P048[0] = iP048[0] + seg3; | |
1208 P049[0] = iP049[0] + seg3; | |
1209 P050[0] = iP050[0] + seg3; | |
1210 P051[0] = iP051[0] + seg3; | |
1211 P052[0] = iP052[0] + seg3; | |
1212 P002[0] = iP002[0] + seg4; | |
1213 P061[0] = iP061[0] + seg4; | |
1214 P069[0] = iP069[0] + seg4; | |
1215 P070[0] = iP070[0] + seg4; | |
1216 | |
1217 fish->vtail += ((fish->dtheta - fish->vtail) * 0.1); | |
1218 | |
1219 if (fish->vtail > 0.5) { | |
1220 fish->vtail = 0.5; | |
1221 } else if (fish->vtail < -0.5) { | |
1222 fish->vtail = -0.5; | |
1223 } | |
1224 segup = thrash * fish->vtail; | |
1225 | |
1226 P023[1] = iP023[1] + segup; | |
1227 P024[1] = iP024[1] + segup; | |
1228 P025[1] = iP025[1] + segup; | |
1229 P026[1] = iP026[1] + segup; | |
1230 P027[1] = iP027[1] + segup; | |
1231 P028[1] = iP028[1] + segup; | |
1232 P029[1] = iP029[1] + segup; | |
1233 P030[1] = iP030[1] + segup; | |
1234 P031[1] = iP031[1] + segup; | |
1235 P032[1] = iP032[1] + segup; | |
1236 P033[1] = iP033[1] + segup * 5.0; | |
1237 P034[1] = iP034[1] + segup * 5.0; | |
1238 P035[1] = iP035[1] + segup * 5.0; | |
1239 P036[1] = iP036[1] + segup * 5.0; | |
1240 P037[1] = iP037[1] + segup * 5.0; | |
1241 P038[1] = iP038[1] + segup * 5.0; | |
1242 P039[1] = iP039[1] + segup * 5.0; | |
1243 P040[1] = iP040[1] + segup * 5.0; | |
1244 P041[1] = iP041[1] + segup * 5.0; | |
1245 P042[1] = iP042[1] + segup * 5.0; | |
1246 P043[1] = iP043[1] + segup * 12.0; | |
1247 P044[1] = iP044[1] + segup * 12.0; | |
1248 P045[1] = iP045[1] + segup * 12.0; | |
1249 P046[1] = iP046[1] + segup * 12.0; | |
1250 P047[1] = iP047[1] + segup * 12.0; | |
1251 P048[1] = iP048[1] + segup * 12.0; | |
1252 P049[1] = iP049[1] + segup * 12.0; | |
1253 P050[1] = iP050[1] + segup * 12.0; | |
1254 P051[1] = iP051[1] + segup * 12.0; | |
1255 P052[1] = iP052[1] + segup * 12.0; | |
1256 P002[1] = iP002[1] + segup * 17.0; | |
1257 P061[1] = iP061[1] + segup * 17.0; | |
1258 P069[1] = iP069[1] + segup * 17.0; | |
1259 P070[1] = iP070[1] + segup * 17.0; | |
1260 | |
1261 glPushMatrix(); | |
1262 | |
1263 glTranslatef(0.0, 0.0, -3000.0); | |
1264 | |
1265 glGetFloatv(GL_MODELVIEW_MATRIX, &mat[0][0]); | |
1266 n = 0; | |
1267 if (mat[0][2] >= 0.0) { | |
1268 n += 1; | |
1269 } | |
1270 if (mat[1][2] >= 0.0) { | |
1271 n += 2; | |
1272 } | |
1273 if (mat[2][2] >= 0.0) { | |
1274 n += 4; | |
1275 } | |
1276 glScalef(2.0, 1.0, 1.0); | |
1277 | |
1278 glEnable(GL_CULL_FACE); | |
1279 switch (n) { | |
1280 case 0: | |
1281 Fish_1(); | |
1282 break; | |
1283 case 1: | |
1284 Fish_2(); | |
1285 break; | |
1286 case 2: | |
1287 Fish_3(); | |
1288 break; | |
1289 case 3: | |
1290 Fish_4(); | |
1291 break; | |
1292 case 4: | |
1293 Fish_5(); | |
1294 break; | |
1295 case 5: | |
1296 Fish_6(); | |
1297 break; | |
1298 case 6: | |
1299 Fish_7(); | |
1300 break; | |
1301 case 7: | |
1302 Fish_8(); | |
1303 break; | |
1304 } | |
1305 glDisable(GL_CULL_FACE); | |
1306 | |
1307 glPopMatrix(); | |
1308 } |