|
S60 3rd Edition SDK for Symbian OS Example Applications Guide |
00001 /* 00002 * ============================================================================== 00003 * Name : duck.h 00004 * Part of : OpenGLEx / SimpleLight 00005 * Interface : 00006 * Description : 00007 * Version : 00008 * 00009 * Copyright (c) 2004-2006 Nokia Corporation. 00010 * This material, including documentation and any related 00011 * computer programs, is protected by copyright controlled by 00012 * Nokia Corporation. 00013 * ============================================================================== 00014 */ 00015 00016 // MACROS 00017 #define objVertices 96 00018 #define objFaces 186 00019 #define scalar(a) ((short)(a*300)) 00020 00021 // CONSTANTS 00022 /** Vertices for the duck object. */ 00023 static const GLshort objVertexdataDuck[]= 00024 { 00025 scalar(-76.586),scalar(3.49221),scalar(15.5749), 00026 scalar(-74.8592),scalar(3.3196),scalar(18.1653), 00027 scalar(-74.5137),scalar(0.729208),scalar(17.4746), 00028 scalar(-74.3411),scalar(6.25547),scalar(17.6472), 00029 scalar(-74.1682),scalar(0.901814),scalar(15.2294), 00030 scalar(-71.5778),scalar(-0.30695),scalar(19.5469), 00031 scalar(-71.4052),scalar(6.94642),scalar(19.7195), 00032 scalar(-70.7143),scalar(-0.65216),scalar(15.0565), 00033 scalar(-70.5417),scalar(7.4645),scalar(15.2294), 00034 scalar(-66.5696),scalar(-1.34311),scalar(21.1011), 00035 scalar(-66.5696),scalar(3.147),scalar(23.1732), 00036 scalar(-66.3968),scalar(7.6371),scalar(21.2738), 00037 scalar(-63.4609),scalar(3.147),scalar(14.5385), 00038 scalar(-60.8705),scalar(-0.134081),scalar(26.9726), 00039 scalar(-60.8705),scalar(3.66508),scalar(-4.45838), 00040 scalar(-60.6976),scalar(5.91),scalar(27.1455), 00041 scalar(-59.6615),scalar(-1.68832),scalar(26.1091), 00042 scalar(-58.7979),scalar(0.0385243),scalar(30.4268), 00043 scalar(-58.6253),scalar(5.39192),scalar(30.5994), 00044 scalar(-58.4527),scalar(-4.79705),scalar(0.204591), 00045 scalar(-58.2799),scalar(-4.62445),scalar(-9.46683), 00046 scalar(-58.1073),scalar(11.782),scalar(0.549802), 00047 scalar(-57.9346),scalar(11.9546),scalar(-9.12136), 00048 scalar(-57.7618),scalar(2.45605),scalar(41.3067), 00049 scalar(-57.2437),scalar(-4.27898),scalar(21.9644), 00050 scalar(-56.8982),scalar(10.0549),scalar(22.3099), 00051 scalar(-54.1352),scalar(2.97413),scalar(15.0565), 00052 scalar(-54.1352),scalar(10.4004),scalar(33.8808), 00053 scalar(-53.9624),scalar(-4.79705),scalar(7.28509), 00054 scalar(-53.9624),scalar(-0.997633),scalar(45.4516), 00055 scalar(-53.4443),scalar(-3.06995),scalar(17.6472), 00056 scalar(-53.0991),scalar(8.84613),scalar(17.9927), 00057 scalar(-52.2355),scalar(12.3001),scalar(36.6438), 00058 scalar(-50.5084),scalar(12.4727),scalar(33.5353), 00059 scalar(-50.3358),scalar(2.97413),scalar(11.7755), 00060 scalar(-49.4723),scalar(-4.45158),scalar(-21.2103), 00061 scalar(-48.7816),scalar(-1.17024),scalar(49.5963), 00062 scalar(-48.6087),scalar(5.21931),scalar(49.7691), 00063 scalar(-47.0545),scalar(9.01873),scalar(48.2149), 00064 scalar(-46.1909),scalar(8.50066),scalar(12.8116), 00065 scalar(-42.046),scalar(20.2441),scalar(-20.0015), 00066 scalar(-38.9375),scalar(-7.21484),scalar(45.9697), 00067 scalar(-38.5921),scalar(7.98258),scalar(50.1146), 00068 scalar(-38.5921),scalar(14.8905),scalar(36.6438), 00069 scalar(-37.9014),scalar(-7.56032),scalar(12.2935), 00070 scalar(-37.9014),scalar(1.5925),scalar(51.6689), 00071 scalar(-37.3833),scalar(12.8182),scalar(12.8116), 00072 scalar(-37.3833),scalar(13.3362),scalar(39.7525), 00073 scalar(-35.4836),scalar(32.3331),scalar(-10.1575), 00074 scalar(-34.62),scalar(-12.0504),scalar(28.8723), 00075 scalar(-31.8568),scalar(-29.8385),scalar(-1.86799), 00076 scalar(-31.5116),scalar(-26.73),scalar(-15.8566), 00077 scalar(-30.4751),scalar(15.5814),scalar(28.0088), 00078 scalar(-30.1299),scalar(35.4418),scalar(-0.313751), 00079 scalar(-28.7483),scalar(-0.997633),scalar(45.4516), 00080 scalar(-27.0212),scalar(-7.04224),scalar(14.3659), 00081 scalar(-26.8486),scalar(-24.8303),scalar(7.97604), 00082 scalar(-25.8124),scalar(-4.45158),scalar(40.4432), 00083 scalar(-23.0492),scalar(-6.86937),scalar(27.8362), 00084 scalar(-22.013),scalar(-3.9335),scalar(17.3017), 00085 scalar(-21.6675),scalar(8.15518),scalar(17.6472), 00086 scalar(-20.804),scalar(-0.825028),scalar(20.4105), 00087 scalar(-20.6314),scalar(4.87384),scalar(20.5831), 00088 scalar(-20.4588),scalar(1.93797),scalar(21.4466), 00089 scalar(-20.2859),scalar(7.29163),scalar(30.254), 00090 scalar(-19.9404),scalar(-1.51571),scalar(31.463), 00091 scalar(-19.7678),scalar(-0.997633),scalar(18.6834), 00092 scalar(-19.7678),scalar(1.93797),scalar(19.2014), 00093 scalar(-19.5952),scalar(1.5925),scalar(34.9169), 00094 scalar(-19.5952),scalar(5.04671),scalar(18.856), 00095 scalar(-18.9043),scalar(35.9599),scalar(-13.9569), 00096 scalar(-18.7317),scalar(1.76537),scalar(28.6997), 00097 scalar(-4.22494),scalar(-15.5044),scalar(21.1011), 00098 scalar(-3.36138),scalar(18.5173),scalar(21.9644), 00099 scalar(-2.84331),scalar(-35.8831),scalar(2.96759), 00100 scalar(25.8247),scalar(-20.5128),scalar(13.3297), 00101 scalar(26.3428),scalar(-32.4292),scalar(-10.8485), 00102 scalar(26.8609),scalar(22.4893),scalar(14.3659), 00103 scalar(28.0699),scalar(35.4418),scalar(-9.12136), 00104 scalar(39.1227),scalar(19.5534),scalar(-21.2103), 00105 scalar(51.2116),scalar(-19.9947),scalar(-5.14933), 00106 scalar(52.2478),scalar(21.4532),scalar(-4.11317), 00107 scalar(54.8382),scalar(-17.577),scalar(-9.46683), 00108 scalar(57.9469),scalar(-8.0784),scalar(-15.166), 00109 scalar(64.8548),scalar(0.383735),scalar(-2.73154), 00110 scalar(70.0359),scalar(-12.5685),scalar(-7.56712), 00111 scalar(71.072),scalar(0.383735),scalar(-11.8846), 00112 scalar(79.5344),scalar(8.84613),scalar(-7.04904), 00113 scalar(79.707),scalar(-5.31513),scalar(-10.1575), 00114 scalar(80.0525),scalar(5.73739),scalar(-9.81204), 00115 scalar(84.8881),scalar(-0.65216),scalar(-8.94875), 00116 scalar(84.8881),scalar(0.383735),scalar(-8.94875), 00117 scalar(85.0607),scalar(-3.9335),scalar(-6.70357), 00118 scalar(85.2335),scalar(3.83768),scalar(-6.53096), 00119 scalar(85.4061),scalar(0.0385243),scalar(-5.32194), 00120 scalar(-5.98613),scalar(9.906),scalar(18.2876) 00121 }; 00122 00123 /** Surface normal vectors for the duck object. */ 00124 static const GLbyte objNormaldataDuck[]= 00125 { 00126 -124,5,-21, 00127 -87,-2,91, 00128 -87,-78,48, 00129 -86,71,59, 00130 -44,-49,-108, 00131 -57,-91,66, 00132 -51,91,71, 00133 -25,-106,-64, 00134 -22,97,-78, 00135 -53,-97,61, 00136 -68,-1,106, 00137 -46,98,65, 00138 0,1,-126, 00139 -90,-38,80, 00140 -126,4,-3, 00141 -87,52,75, 00142 -76,-88,48, 00143 -113,-40,40, 00144 -114,25,49, 00145 -101,-65,40, 00146 -103,-63,-36, 00147 -95,62,56, 00148 -104,54,-48, 00149 -111,35,50, 00150 -44,-119,-4, 00151 -38,120,-3, 00152 -21,3,-125, 00153 -89,87,20, 00154 -94,-29,79, 00155 -85,-77,53, 00156 -38,-80,-89, 00157 -39,87,-83, 00158 -64,107,21, 00159 -32,121,15, 00160 -46,-53,105, 00161 -69,-10,-105, 00162 -42,-50,108, 00163 -54,27,111, 00164 -34,102,66, 00165 -55,81,-80, 00166 -44,56,-104, 00167 8,-102,75, 00168 46,74,91, 00169 -12,124,21, 00170 -37,-51,109, 00171 18,-17,124, 00172 -19,114,-50, 00173 8,114,54, 00174 -67,103,-30, 00175 4,-126,6, 00176 -64,-107,19, 00177 -34,-91,-80, 00178 38,120,13, 00179 -37,111,48, 00180 78,-21,97, 00181 -30,-41,115, 00182 -45,-68,96, 00183 77,-83,56, 00184 80,-98,5, 00185 -43,-34,114, 00186 92,87,0, 00187 118,-36,28, 00188 120,27,30, 00189 126,-6,0, 00190 112,57,15, 00191 116,-50,6, 00192 -40,-24,117, 00193 114,-20,51, 00194 112,4,58, 00195 0,14,126, 00196 -13,104,-70, 00197 126,-6,-5, 00198 -11,-29,123, 00199 -14,50,115, 00200 -6,-118,45, 00201 43,-67,98, 00202 39,-110,-49, 00203 43,47,109, 00204 39,89,-81, 00205 26,34,-119, 00206 52,-115,12, 00207 65,108,7, 00208 50,-103,-53, 00209 30,-42,-115, 00210 37,0,121, 00211 61,-111,3, 00212 29,0,-123, 00213 64,100,44, 00214 47,-47,-107, 00215 55,42,-106, 00216 52,24,-112, 00217 51,-22,-113, 00218 70,-98,39, 00219 125,0,-17, 00220 14,-42,118, 00221 -7,-30,122 00222 }; 00223 00224 /** Indices to the duck object vertices. */ 00225 static const GLubyte objFacedataDuck[]= 00226 { 00227 14,20,19, 00228 19,20,50, 00229 35,20,14, 00230 35,51,20, 00231 51,50,20, 00232 50,56,19, 00233 19,56,28, 00234 28,56,34, 00235 34,56,44, 00236 19,28,14, 00237 74,50,51, 00238 74,56,50, 00239 72,66,59, 00240 56,72,59, 00241 56,74,72, 00242 76,75,74, 00243 74,75,72, 00244 85,75,80, 00245 75,76,80, 00246 80,76,82, 00247 76,82,80, 00248 80,82,85, 00249 85,82,83, 00250 85,84,75, 00251 88,83,86, 00252 88,85,83, 00253 85,88,92, 00254 92,88,91, 00255 91,88,86, 00256 92,84,85, 00257 84,92,94, 00258 92,91,94, 00259 59,55,56, 00260 56,55,44, 00261 74,51,76, 00262 82,76,83, 00263 67,61,66, 00264 66,61,59, 00265 59,61,65, 00266 65,61,63, 00267 63,61,67, 00268 59,58,55, 00269 55,58,49, 00270 66,72,67, 00271 59,65,58, 00272 58,65,57, 00273 57,65,68, 00274 68,65,71, 00275 63,71,65, 00276 57,49,58, 00277 55,49,44, 00278 24,44,49, 00279 34,44,30, 00280 24,30,44, 00281 29,24,49, 00282 41,45,36, 00283 54,45,41, 00284 54,41,57, 00285 49,57,41, 00286 68,54,57, 00287 29,49,41, 00288 36,29,41, 00289 24,29,16, 00290 16,29,17, 00291 17,29,23, 00292 24,7,30, 00293 17,13,16, 00294 30,7,26, 00295 26,7,12, 00296 7,4,12, 00297 34,30,26, 00298 10,9,13, 00299 13,9,16, 00300 16,9,24, 00301 24,9,7, 00302 7,9,5, 00303 5,9,10, 00304 10,2,5, 00305 5,2,7, 00306 7,2,4, 00307 4,2,0, 00308 0,2,1, 00309 1,2,10, 00310 1,10,3, 00311 0,1,3, 00312 6,8,3, 00313 10,6,3, 00314 6,10,11, 00315 8,6,11, 00316 10,15,11, 00317 34,26,31, 00318 4,0,8, 00319 12,4,8, 00320 0,3,8, 00321 26,12,8, 00322 31,26,8, 00323 13,18,15, 00324 10,13,15, 00325 13,17,18, 00326 15,25,11, 00327 25,8,11, 00328 25,31,8, 00329 15,18,27, 00330 25,15,27, 00331 37,23,29, 00332 37,29,36, 00333 37,42,38, 00334 18,17,23, 00335 27,18,23, 00336 23,37,38, 00337 23,38,32, 00338 27,23,32, 00339 33,27,32, 00340 38,33,32, 00341 33,38,47, 00342 37,36,45, 00343 42,37,45, 00344 38,42,47, 00345 42,52,47, 00346 45,54,42, 00347 25,33,43, 00348 25,27,33, 00349 25,52,46, 00350 31,25,46, 00351 39,31,46, 00352 33,47,43, 00353 47,52,43, 00354 68,64,42, 00355 54,68,42, 00356 64,52,42, 00357 25,43,52, 00358 64,68,71, 00359 63,64,71, 00360 69,67,72, 00361 60,52,64, 00362 63,67,62, 00363 64,63,62, 00364 60,64,62, 00365 69,60,62, 00366 67,69,62, 00367 79,70,78, 00368 46,52,60, 00369 73,46,60, 00370 93,94,91, 00371 93,87,94, 00372 87,81,84, 00373 94,87,84, 00374 90,86,89, 00375 93,90,89, 00376 87,93,89, 00377 79,87,89, 00378 86,79,89, 00379 87,79,81, 00380 83,79,86, 00381 81,79,78, 00382 78,81,81, 00383 77,75,84, 00384 84,81,77, 00385 81,78,77, 00386 78,73,77, 00387 73,78,53, 00388 73,60,69, 00389 73,69,72, 00390 72,75,77, 00391 73,72,77, 00392 46,73,53, 00393 78,70,53, 00394 48,53,70, 00395 34,31,39, 00396 21,28,34, 00397 21,34,39, 00398 21,14,28, 00399 46,21,39, 00400 53,48,21, 00401 46,53,21, 00402 70,40,48, 00403 35,14,22, 00404 40,35,22, 00405 48,40,22, 00406 21,48,22, 00407 14,21,22, 00408 79,76,51, 00409 79,83,76, 00410 79,40,70, 00411 79,35,40, 00412 79,51,35 00413 }; 00414
|
© Nokia 2006 |