void cloud_object::produce_vertices(std::size_t stream, void* data) { int16_t* pv = static_cast<int16_t*>(data); switch(current_object_) { case SPHERE: setup_sphere(pv); break; case CUBE: setup_cube(pv); break; case TORUS: setup_torus(pv); break; case BROKEN_TORUS: setup_broken_torus(pv); break; } }
Planet::Planet(double radius) : Drawable(), _radius(radius) { setup_cube(); setup_skybox(); create_color_ramp_texture(); noise_maker.initialize(); }