示例#1
0
void Scene::reset_lights(void) {
  for (int i=0; i<DISP_LIGHTS; i++) { 
    define_light(i,def_light_color, def_light_pos[i]);
    activate_light(i,def_light_on[i]);
  }
  light_changed = 1;
}
void
SDFLoader::define(std::vector<std::string> const& tokens)
{
	if (tokens[1] == "shape") {
		define_shape(tokens);
	} else if (tokens[1] == "material" && tokens.size() == 13) {
		define_material(tokens);
	} else if (tokens[1] == "light" && tokens.size() == 12) {
		define_light(tokens);
    } else if (tokens[1] == "camera" && tokens.size() == 4) {
		define_camera(tokens);
	} else {
		throw std::runtime_error("illegal definition (general)");
	}
}
示例#3
0
文件: Scene.C 项目: tmd-gpat/MOLding
void Scene::reset_lights(void) {
  int i;

  // standard directional lights
  for (i=0; i<DISP_LIGHTS; i++) { 
    define_light(i, def_light_color, def_light_pos[i]);
    activate_light(i, def_light_on[i]);
  }
  light_changed = 1;

  // advanced lights
  for (i=0; i<DISP_LIGHTS; i++) { 
    float spotdir[] = { 0.0f, 0.0f, 1.0f };
    define_adv_light(i, def_light_color, def_light_pos[i],
                     1.0f, 0.0f, 0.0f,
                     spotdir, 0.3f, 0.7f, 0);
    activate_adv_light(i, 0);
  }
  adv_light_changed = 1;
}