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