From: Carsten W. <ca...@us...> - 2005-05-07 22:15:29
|
Update of /cvsroot/jake2/jake2/src/jake2/render/lwjgl In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv13283/src/jake2/render/lwjgl Modified Files: Mesh.java Log Message: this reduces the memory footprint massive; you can now run city3 with 90MB heap Index: Mesh.java =================================================================== RCS file: /cvsroot/jake2/jake2/src/jake2/render/lwjgl/Mesh.java,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** Mesh.java 1 Feb 2005 16:55:07 -0000 1.5 --- Mesh.java 7 May 2005 22:15:05 -0000 1.6 *************** *** 79,87 **** void GL_LerpVerts(int nverts, qfiles.dtrivertx_t[] ov, qfiles.dtrivertx_t[] verts, float[] move, float[] frontv, float[] backv ) { - int[] ovv; - int[] vv; FloatBuffer lerp = vertexArrayBuf; lerp.limit((nverts << 2) - nverts); // nverts * 3 //PMM -- added RF_SHELL_DOUBLE, RF_SHELL_HALF_DAM if ( (currententity.flags & ( Defines.RF_SHELL_RED | Defines.RF_SHELL_GREEN | Defines.RF_SHELL_BLUE | Defines.RF_SHELL_DOUBLE | Defines.RF_SHELL_HALF_DAM)) != 0 ) --- 79,87 ---- void GL_LerpVerts(int nverts, qfiles.dtrivertx_t[] ov, qfiles.dtrivertx_t[] verts, float[] move, float[] frontv, float[] backv ) { FloatBuffer lerp = vertexArrayBuf; lerp.limit((nverts << 2) - nverts); // nverts * 3 + qfiles.dtrivertx_t ovv, vv; + //PMM -- added RF_SHELL_DOUBLE, RF_SHELL_HALF_DAM if ( (currententity.flags & ( Defines.RF_SHELL_RED | Defines.RF_SHELL_GREEN | Defines.RF_SHELL_BLUE | Defines.RF_SHELL_DOUBLE | Defines.RF_SHELL_HALF_DAM)) != 0 ) *************** *** 91,101 **** for (int i=0 ; i < nverts; i++/* , v++, ov++, lerp+=4 */) { ! normal = r_avertexnormals[verts[i].lightnormalindex]; ! ovv = ov[i].v; ! vv = verts[i].v; ! lerp.put(++j, move[0] + ovv[0]*backv[0] + vv[0]*frontv[0] + normal[0] * Defines.POWERSUIT_SCALE); ! lerp.put(++j, move[1] + ovv[1]*backv[1] + vv[1]*frontv[1] + normal[1] * Defines.POWERSUIT_SCALE); ! lerp.put(++j, move[2] + ovv[2]*backv[2] + vv[2]*frontv[2] + normal[2] * Defines.POWERSUIT_SCALE); } } --- 91,101 ---- for (int i=0 ; i < nverts; i++/* , v++, ov++, lerp+=4 */) { ! normal = r_avertexnormals[verts[i].lightnormalindex()]; ! ovv = ov[i]; ! vv = verts[i]; ! lerp.put(++j, move[0] + ovv.v0() * backv[0] + vv.v0() * frontv[0] + normal[0] * Defines.POWERSUIT_SCALE); ! lerp.put(++j, move[1] + ovv.v1() * backv[1] + vv.v1() * frontv[1] + normal[1] * Defines.POWERSUIT_SCALE); ! lerp.put(++j, move[2] + ovv.v2() * backv[2] + vv.v2() * frontv[2] + normal[2] * Defines.POWERSUIT_SCALE); } } *************** *** 105,114 **** for (int i=0 ; i < nverts; i++ /* , v++, ov++, lerp+=4 */) { ! ovv = ov[i].v; ! vv = verts[i].v; ! lerp.put(++j, move[0] + ovv[0]*backv[0] + vv[0]*frontv[0]); ! lerp.put(++j, move[1] + ovv[1]*backv[1] + vv[1]*frontv[1]); ! lerp.put(++j, move[2] + ovv[2]*backv[2] + vv[2]*frontv[2]); } } --- 105,114 ---- for (int i=0 ; i < nverts; i++ /* , v++, ov++, lerp+=4 */) { ! ovv = ov[i]; ! vv = verts[i]; ! lerp.put(++j, move[0] + ovv.v0()* backv[0] + vv.v0()*frontv[0]); ! lerp.put(++j, move[1] + ovv.v1()* backv[1] + vv.v1()*frontv[1]); ! lerp.put(++j, move[2] + ovv.v2()* backv[2] + vv.v2()*frontv[2]); } } *************** *** 199,203 **** for (int i = 0; i < size; i++ ) { ! l = shadedots[verts[i].lightnormalindex]; color.put(++j, l * shadelight[0]); color.put(++j, l * shadelight[1]); --- 199,203 ---- for (int i = 0; i < size; i++ ) { ! l = shadedots[verts[i].lightnormalindex()]; color.put(++j, l * shadelight[0]); color.put(++j, l * shadelight[1]); |