From 897023eda51604b4a207a3efbaa37d311a5c4f30 Mon Sep 17 00:00:00 2001 From: Kp Date: Sun, 18 Aug 2013 22:27:33 +0000 Subject: [PATCH] Reorder vertex render lookups to simplify merge --- d1x-rebirth/main/render.c | 8 ++++---- d2x-rebirth/main/render.c | 10 ++++------ 2 files changed, 8 insertions(+), 10 deletions(-) diff --git a/d1x-rebirth/main/render.c b/d1x-rebirth/main/render.c index 41349c9ee..fe5b32414 100644 --- a/d1x-rebirth/main/render.c +++ b/d1x-rebirth/main/render.c @@ -401,16 +401,16 @@ void render_side(segment *segp, int sidenum) normals[1] = segp->sides[sidenum].normals[1]; #endif + get_side_verts(vertnum_list,segp-Segments,sidenum); + // Regardless of whether this side is comprised of a single quad, or two triangles, we need to know one normal, so // deal with it, get the dot product. if (sidep->type == SIDE_IS_TRI_13) { - vm_vec_normalized_dir(&tvec, &Viewer_eye, &Vertices[segp->verts[Side_to_verts[sidenum][1]]]); + vm_vec_normalized_dir(&tvec, &Viewer_eye, &Vertices[vertnum_list[1]]); } else { - vm_vec_normalized_dir(&tvec, &Viewer_eye, &Vertices[segp->verts[Side_to_verts[sidenum][0]]]); + vm_vec_normalized_dir(&tvec, &Viewer_eye, &Vertices[vertnum_list[0]]); } - get_side_verts(vertnum_list,segp-Segments,sidenum); - v_dot_n0 = vm_vec_dot(&tvec, &normals[0]); if (sidep->type == SIDE_IS_QUAD) { diff --git a/d2x-rebirth/main/render.c b/d2x-rebirth/main/render.c index 38e5c555b..d8551422e 100644 --- a/d2x-rebirth/main/render.c +++ b/d2x-rebirth/main/render.c @@ -434,12 +434,13 @@ void render_side(segment *segp, int sidenum) normals[0] = segp->sides[sidenum].normals[0]; normals[1] = segp->sides[sidenum].normals[1]; #endif + get_side_verts(vertnum_list,segp-Segments,sidenum); // ========== Mark: Here is the change...beginning here: ========== if (sidep->type == SIDE_IS_QUAD) { - vm_vec_sub(&tvec, &Viewer_eye, &Vertices[segp->verts[Side_to_verts[sidenum][0]]]); + vm_vec_sub(&tvec, &Viewer_eye, &Vertices[vertnum_list[0]]); // -- Old, slow way -- // Regardless of whether this side is comprised of a single quad, or two triangles, we need to know one normal, so // -- Old, slow way -- // deal with it, get the dot product. @@ -448,7 +449,6 @@ void render_side(segment *segp, int sidenum) // -- Old, slow way -- else // -- Old, slow way -- vm_vec_normalized_dir(&tvec, &Viewer_eye, &Vertices[segp->verts[Side_to_verts[sidenum][0]]]); - get_side_verts(vertnum_list,segp-Segments,sidenum); v_dot_n0 = vm_vec_dot(&tvec, &normals[0]); // -- flare creates point -- { @@ -501,11 +501,9 @@ void render_side(segment *segp, int sidenum) // Regardless of whether this side is comprised of a single quad, or two triangles, we need to know one normal, so // deal with it, get the dot product. if (sidep->type == SIDE_IS_TRI_13) - vm_vec_normalized_dir_quick(&tvec, &Viewer_eye, &Vertices[segp->verts[Side_to_verts[sidenum][1]]]); + vm_vec_normalized_dir_quick(&tvec, &Viewer_eye, &Vertices[vertnum_list[1]]); else - vm_vec_normalized_dir_quick(&tvec, &Viewer_eye, &Vertices[segp->verts[Side_to_verts[sidenum][0]]]); - - get_side_verts(vertnum_list,segp-Segments,sidenum); + vm_vec_normalized_dir_quick(&tvec, &Viewer_eye, &Vertices[vertnum_list[0]]); v_dot_n0 = vm_vec_dot(&tvec, &normals[0]);