source: trunk/src/testing/app/atlantis-mpi/shark.c @ 4

Revision 4, 33.1 KB checked in by ajaworski, 13 years ago (diff)

Added modified SAGE sources

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