From e027c821c9b15cdadcb4ebed19364cd7d4675bbf Mon Sep 17 00:00:00 2001 From: Kp Date: Sat, 13 Dec 2014 04:11:04 +0000 Subject: [PATCH] Pass update_rendered_data arg by & --- common/main/render.h | 4 +++- similar/main/gamerend.cpp | 4 ++-- similar/main/gauges.cpp | 2 +- similar/main/render.cpp | 17 ++++++++--------- 4 files changed, 14 insertions(+), 13 deletions(-) diff --git a/common/main/render.h b/common/main/render.h index 357aa122a..44cdd4440 100644 --- a/common/main/render.h +++ b/common/main/render.h @@ -33,6 +33,8 @@ COPYRIGHT 1993-1999 PARALLAX SOFTWARE CORPORATION. ALL RIGHTS RESERVED. #include "segnum.h" #include "fwdvalptridx.h" +struct window_rendered_data; + extern int Render_depth; //how many segments deep to render static const unsigned Max_perspective_depth = 8; // Deepest segment at which perspective extern interpolation will be used. extern unsigned Max_linear_depth; // Deepest segment at which linear extern interpolation will be used. @@ -111,7 +113,7 @@ static inline g3s_codes rotate_list(const array &a) void render_mine(segnum_t start_seg_num, fix eye_offset, int window_num); #if defined(DXX_BUILD_DESCENT_II) -extern void update_rendered_data(int window_num, vobjptr_t viewer, int rear_view_flag); +void update_rendered_data(window_rendered_data &window, vobjptr_t viewer, int rear_view_flag); #endif #endif diff --git a/similar/main/gamerend.cpp b/similar/main/gamerend.cpp index 988ac6b61..77a44661c 100644 --- a/similar/main/gamerend.cpp +++ b/similar/main/gamerend.cpp @@ -594,7 +594,7 @@ void game_render_frame_mono() Viewer = Guided_missile[Player_num]; - update_rendered_data(0, Viewer, 0); + update_rendered_data(Window_rendered_data[0], Viewer, 0); render_frame(0, 0); wake_up_rendered_objects(Viewer, 0); @@ -624,7 +624,7 @@ void game_render_frame_mono() BigWindowSwitch=0; return; } - update_rendered_data(0, Viewer, Rear_view); + update_rendered_data(Window_rendered_data[0], Viewer, Rear_view); #endif render_frame(0, 0); } diff --git a/similar/main/gauges.cpp b/similar/main/gauges.cpp index ab2a84398..0cdcc1293 100644 --- a/similar/main/gauges.cpp +++ b/similar/main/gauges.cpp @@ -3178,7 +3178,7 @@ void do_cockpit_window_view(int win,const objptridx_t viewer,int rear_view_flag, return; } - update_rendered_data(win+1, viewer, rear_view_flag); + update_rendered_data(Window_rendered_data[win+1], viewer, rear_view_flag); weapon_box_user[win] = user; //say who's using window diff --git a/similar/main/render.cpp b/similar/main/render.cpp index 032141bca..9051505e5 100644 --- a/similar/main/render.cpp +++ b/similar/main/render.cpp @@ -725,7 +725,7 @@ static void project_list(array &pointnumlist) // ----------------------------------------------------------------------------------- #if !defined(OGL) -static void render_segment(segnum_t segnum, int window_num) +static void render_segment(segnum_t segnum) { segment *seg = &Segments[segnum]; int sn; @@ -1321,18 +1321,17 @@ void render_frame(fix eye_offset, int window_num) static int first_terminal_seg; #if defined(DXX_BUILD_DESCENT_II) -void update_rendered_data(int window_num, const vobjptr_t viewer, int rear_view_flag) +void update_rendered_data(window_rendered_data &window, const vobjptr_t viewer, int rear_view_flag) { - Assert(window_num < MAX_RENDERED_WINDOWS); - Window_rendered_data[window_num].time = timer_query(); - Window_rendered_data[window_num].viewer = viewer; - Window_rendered_data[window_num].rear_view = rear_view_flag; + window.time = timer_query(); + window.viewer = viewer; + window.rear_view = rear_view_flag; } #endif //build a list of segments to be rendered //fills in Render_list & N_render_segs -static void build_segment_list(render_state_t &rstate, visited_twobit_array_t &visited, short start_seg_num, int window_num) +static void build_segment_list(render_state_t &rstate, visited_twobit_array_t &visited, short start_seg_num) { int lcnt,scnt,ecnt; int l; @@ -1550,7 +1549,7 @@ void render_mine(segnum_t start_seg_num,fix eye_offset, int window_num) else #endif //NOTE LINK TO ABOVE!! - build_segment_list(rstate, visited, start_seg_num, window_num); //fills in Render_list & N_render_segs + build_segment_list(rstate, visited, start_seg_num); //fills in Render_list & N_render_segs //render away #ifndef NDEBUG @@ -1620,7 +1619,7 @@ void render_mine(segnum_t start_seg_num,fix eye_offset, int window_num) Window_clip_bot = rw.bot; } - render_segment(segnum, window_num); + render_segment(segnum); visited[segnum]=3; { //reset for objects