Pass polymodel &to free_model
This commit is contained in:
parent
1a7659897a
commit
a6cd87613c
|
@ -145,7 +145,7 @@ void draw_model_picture(grs_canvas &, uint_fast32_t mn, const vms_angvec *orient
|
|||
#define MAX_POLYOBJ_TEXTURES 50
|
||||
#elif defined(DXX_BUILD_DESCENT_II)
|
||||
// free up a model, getting rid of all its memory
|
||||
void free_model(polymodel *po);
|
||||
void free_model(polymodel &po);
|
||||
|
||||
#define MAX_POLYOBJ_TEXTURES 100
|
||||
constexpr unsigned N_D2_POLYGON_MODELS = 166;
|
||||
|
|
|
@ -400,9 +400,8 @@ static void bm_free_extra_objbitmaps()
|
|||
static void bm_free_extra_models()
|
||||
{
|
||||
auto base = std::min(N_D2_POLYGON_MODELS, exit_modelnum);
|
||||
range_for (auto &p, partial_range(Polygon_models, base, N_polygon_models))
|
||||
free_model(&p);
|
||||
N_polygon_models = base;
|
||||
range_for (auto &p, partial_range(Polygon_models, base, exchange(N_polygon_models, base)))
|
||||
free_model(p);
|
||||
}
|
||||
|
||||
//type==1 means 1.1, type==2 means 1.2 (with weapons)
|
||||
|
@ -529,7 +528,7 @@ void load_robot_replacements(const d_fname &level_name)
|
|||
if (i<0 || i>=N_polygon_models)
|
||||
Error("Polygon model (%d) out of range in (%s). Range = [0..%d].",i,static_cast<const char *>(level_name),N_polygon_models-1);
|
||||
|
||||
free_model(&Polygon_models[i]);
|
||||
free_model(Polygon_models[i]);
|
||||
polymodel_read(&Polygon_models[i], fp);
|
||||
polygon_model_data_read(&Polygon_models[i], fp);
|
||||
|
||||
|
|
|
@ -491,9 +491,9 @@ void read_model_guns(const char *filename, reactor &r)
|
|||
#if defined(DXX_BUILD_DESCENT_I)
|
||||
static
|
||||
#endif
|
||||
void free_model(polymodel *po)
|
||||
void free_model(polymodel &po)
|
||||
{
|
||||
po->model_data.reset();
|
||||
po.model_data.reset();
|
||||
}
|
||||
|
||||
array<grs_bitmap *, MAX_POLYOBJ_TEXTURES> texture_list;
|
||||
|
@ -574,7 +574,7 @@ void draw_polygon_model(grs_canvas &canvas, const vms_vector &pos,const vms_matr
|
|||
void free_polygon_models()
|
||||
{
|
||||
range_for (auto &i, partial_range(Polygon_models, N_polygon_models))
|
||||
free_model(&i);
|
||||
free_model(i);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue