Exemple #1
0
void sea_render() {

    static_object* s_seaplane = entity_get("seaplane");
    static_object* s_skydome = entity_get("skydome");
    static_object* s_corvette = entity_get("corvette");
    light* sun = entity_get("sun");
    light* backlight = entity_get("backlight");

    shadow_mapper_begin();
    shadow_mapper_render_static(s_corvette);
    shadow_mapper_end();

    forward_renderer_begin();

    forward_renderer_render_static(s_skydome);
    forward_renderer_render_static(s_seaplane);
    forward_renderer_render_static(s_corvette);


    physics_object* balls[100];
    int num_balls;
    entities_get(balls, &num_balls, physics_object);
    for(int i = 0; i < num_balls; i++) {
        forward_renderer_render_physics(balls[i]);
    }

    static_object* center_sphere = entity_get("center_sphere");
    forward_renderer_render_static(center_sphere);

    forward_renderer_render_light(sun);
    forward_renderer_render_light(backlight);

    forward_renderer_end();

}
Exemple #2
0
void scotland_render() {
  
  light* sun = entity_get("sun");
  camera* cam = entity_get("camera");
  landscape* world = entity_get("world");
  static_object* skydome = entity_get("skydome");
  
  shadow_mapper_begin();
  shadow_mapper_render_landscape(world);
  shadow_mapper_end();
  
  //texture_write_to_file(shadow_mapper_depth_texture(), "shadow_depth.tga");
  
  forward_renderer_begin();

  if (!wireframe) {
    forward_renderer_render_static(skydome);
  }
  
  if (wireframe) {
    glPolygonMode(GL_FRONT_AND_BACK, GL_LINE);
  }  
  forward_renderer_render_landscape(world);
  if (wireframe) {
    glPolygonMode(GL_FRONT_AND_BACK, GL_FILL);
  }
  
  if (!wireframe) {
    vegetation_render();
  }
  
  forward_renderer_render_light(sun);
  
  forward_renderer_end();
  
}
Exemple #3
0
void metaballs_render() {

  static_object* s_podium = entity_get("podium");
  camera* cam = entity_get("camera");
  light* sun = entity_get("sun");

  glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
  
#ifdef MARCHING_CUBES
  shadow_mapper_begin();
    shadow_mapper_render_static(s_podium);
    marching_cubes_render_shadows(sun);
  shadow_mapper_end();
  
  forward_renderer_begin();
    forward_renderer_render_static(s_podium);
    forward_renderer_render_light(sun);
    marching_cubes_render(wireframe, cam, sun);
  forward_renderer_end();
#endif
  
#ifdef VOLUME_RENDERER
  volume_renderer_render();
#endif
  
#ifndef VOLUME_RENDERER
#ifndef MARCHING_CUBES
  particles_render();
#endif
#endif
  
  ui_render();
  
  SDL_GL_SwapBuffers();
  
}