From 7eaa8f03d71059e56c119f989f8fa0110fb7ad00 Mon Sep 17 00:00:00 2001 From: Kp Date: Sat, 1 Feb 2020 22:33:31 +0000 Subject: [PATCH] Hold polymodel data const in morph code --- similar/main/morph.cpp | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/similar/main/morph.cpp b/similar/main/morph.cpp index e0ee88a43..7c253deda 100644 --- a/similar/main/morph.cpp +++ b/similar/main/morph.cpp @@ -122,13 +122,13 @@ static void find_min_max(polymodel *pm,int submodel_num,vms_vector &minv,vms_vec constexpr fix morph_rate = MORPH_RATE; -static void init_points(polymodel *pm,const vms_vector *box_size,int submodel_num,morph_data *md) +static void init_points(const polymodel *const pm, const vms_vector *const box_size, const unsigned submodel_num, morph_data *const md) { ushort nverts; uint16_t type; int i; - auto data = reinterpret_cast(&pm->model_data[pm->submodel_ptrs[submodel_num]]); + auto data = reinterpret_cast(&pm->model_data[pm->submodel_ptrs[submodel_num]]); type = *data++; @@ -186,7 +186,7 @@ static void init_points(polymodel *pm,const vms_vector *box_size,int submodel_nu } } -static void update_points(polymodel *pm,int submodel_num,morph_data *md) +static void update_points(const polymodel *const pm, const unsigned submodel_num, morph_data *const md) { ushort nverts; uint16_t type; @@ -229,7 +229,6 @@ static void update_points(polymodel *pm,int submodel_num,morph_data *md) //process the morphing object for one frame void do_morph_frame(object &obj) { - polymodel *pm; morph_data *md; md = find_morph_data(obj); @@ -241,7 +240,7 @@ void do_morph_frame(object &obj) assert(md->obj == &obj); auto &Polygon_models = LevelSharedPolygonModelState.Polygon_models; - pm = &Polygon_models[obj.rtype.pobj_info.model_num]; + const polymodel *const pm = &Polygon_models[obj.rtype.pobj_info.model_num]; for (uint_fast32_t i = 0; i != pm->n_models; ++i) if (md->submodel_active[i] == morph_data::submodel_state::animating)