ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/libgender/test.C
(Generate patch)

Comparing libgender/test.C (file contents):
Revision 1.63 by root, Sun Oct 17 09:43:07 2004 UTC vs.
Revision 1.68 by root, Thu Oct 21 21:20:09 2004 UTC

161 entity *e = new entity (q); 161 entity *e = new entity (q);
162 e->move (vec3 (10, 3, -4)); 162 e->move (vec3 (10, 3, -4));
163 e->show (); 163 e->show ();
164} 164}
165 165
166void fisch (vec3 center, GLfloat radius, int depth)
167{
168 entity *planet = new entity (new geometry_sphere (radius));
169 planet->move (center);
170 planet->show ();
171
172 if (--depth)
173 {
174 GLfloat r2 = radius * .1F;
175 GLfloat r3 = radius + r2;
176
177 fisch (center + vec3 (r3, 0, 0), r2, depth);
178 fisch (center + vec3 (0, 0, r3), r2, depth);
179 fisch (center + vec3 (-r3, 0, 0), r2, depth);
180 }
181}
182
166extern void draw_level (); 183extern void draw_level ();
167int 184int
168RunGLTest (int argc, char *argv[], 185RunGLTest (int argc, char *argv[],
169 int logo, int slowly, int bpp, float gamma, int noframe, int fsaa) 186 int logo, int slowly, int bpp, float gamma, int noframe, int fsaa)
170{ 187{
172 int rgb_size[3]; 189 int rgb_size[3];
173 int w = 640; 190 int w = 640;
174 int h = 480; 191 int h = 480;
175 int done = 0; 192 int done = 0;
176 int frames; 193 int frames;
177 Uint32 start_time, this_time;
178 Uint32 video_flags; 194 Uint32 video_flags;
179 int value; 195 int value;
180 GLenum gl_error; 196 GLenum gl_error;
181 197
182 if (SDL_Init (SDL_INIT_VIDEO) < 0) 198 if (SDL_Init (SDL_INIT_VIDEO) < 0)
303 e->move (vec3 (i*5, -3, -i*10)); 319 e->move (vec3 (i*5, -3, -i*10));
304 e->show (); 320 e->show ();
305 } 321 }
306 322
307 { 323 {
324 fisch (vec3 (0, 0, -2e9), 1e9, 8);
308 entity *planet = new entity (new geometry_sphere (1e9)); 325 //entity *planet = new entity (new geometry_sphere (1e9));
309 planet->move (vec3 (0, 0, -1.5e9)); 326 //planet->move (vec3 (0, 0, -1.5e9));
310 planet->show (); 327 //planet->show ();
311 } 328 }
312 329
313 { 330 {
314 entity *planet = new entity (new geometry_sphere (4e15)); 331 entity *planet = new entity (new geometry_sphere (4e15));
315 planet->move (vec3 (0, 0, 1e17)); 332 planet->move (vec3 (0, 0, 1e17));
325 camera.orig.x = 0; camera.orig.y = 0; camera.orig.z = 0; 342 camera.orig.x = 0; camera.orig.y = 0; camera.orig.z = 0;
326 camera.p = point (0, 0, 10); 343 camera.p = point (0, 0, 10);
327 camera.d = vec3 (0, 0, -1); 344 camera.d = vec3 (0, 0, -1);
328 camera.u = vec3 (0, 1, 0); 345 camera.u = vec3 (0, 1, 0);
329 camera.w = w; camera.h = h; 346 camera.w = w; camera.h = h;
330 camera.fov = 35; 347 camera.fov = 40.;
331 camera.z_near = 1.;
332 348
333 glEnable (GL_CULL_FACE); 349 glEnable (GL_CULL_FACE);
350 glDisable (GL_ALPHA_TEST);
351 glDisable (GL_BLEND);
334 352
335 init_shaders (); 353 init_shaders ();
336 354
337 osama_material osa_mat; 355 osama_material osa_mat;
338 356
339 /* Loop until done. */ 357 /* Loop until done. */
340 start_time = SDL_GetTicks ();
341 frames = 0; 358 frames = 0;
342 359
343 while (!done) 360 while (!done)
344 { 361 {
345 char *sdl_error; 362 char *sdl_error;
392 while (SDL_PollEvent (&event)) 409 while (SDL_PollEvent (&event))
393 done = HandleEvent (&event); 410 done = HandleEvent (&event);
394 411
395 412
396 ++frames; 413 ++frames;
397 }
398
399 /* Print out the frames per second */
400 this_time = SDL_GetTicks ();
401 if (this_time != start_time)
402 {
403 printf ("%2.2f FPS\n",
404 ((float) frames / (this_time - start_time)) * 1000.0);
405 } 414 }
406 415
407 if (global_image) 416 if (global_image)
408 { 417 {
409 SDL_FreeSurface (global_image); 418 SDL_FreeSurface (global_image);
428 int slowly; 437 int slowly;
429 float gamma = 0.0; 438 float gamma = 0.0;
430 int noframe = 0; 439 int noframe = 0;
431 int fsaa = 0; 440 int fsaa = 0;
432 441
442 shader::debdebdebdebug ();//D
443
433 logo = 0; 444 logo = 0;
434 slowly = 0; 445 slowly = 0;
435 numtests = 1; 446 numtests = 1;
436 for (i = 1; argv[i]; ++i) 447 for (i = 1; argv[i]; ++i)
437 { 448 {

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines