From 8e6b20a776721497beebfbb19ce34d6111082098 Mon Sep 17 00:00:00 2001 From: divverent Date: Sat, 4 Sep 2010 15:39:43 +0000 Subject: [PATCH] optimize R_AnimCache_UpdateEntityMeshBuffers to use memcpy instead of VectorCopy, Steel Storm 150fps -> 167fps (now only effective in D3D mode, as this path is usually not used any more in OpenGL) git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@10441 d7cf8633-e32d-0410-b094-e92efae38249 --- gl_rmain.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/gl_rmain.c b/gl_rmain.c index 568aecde..b29beb5f 100644 --- a/gl_rmain.c +++ b/gl_rmain.c @@ -7805,7 +7805,7 @@ void R_AnimCache_UpdateEntityMeshBuffers(entity_render_t *ent, int numvertices) { /* for (i = 0;i < numvertices;i++) - VectorCopy(ent->animcache_vertex3f + 3*i, ent->animcache_vertexposition[i].vertex3f); + memcpy(ent->animcache_vertexposition[i].vertex3f, ent->animcache_vertex3f + 3*i, sizeof(float[3])); */ // TODO: upload vertex buffer? } @@ -7813,16 +7813,16 @@ void R_AnimCache_UpdateEntityMeshBuffers(entity_render_t *ent, int numvertices) { memcpy(ent->animcache_vertexmesh, ent->model->surfmesh.vertexmesh, sizeof(r_vertexmesh_t)*numvertices); for (i = 0;i < numvertices;i++) - VectorCopy(ent->animcache_vertex3f + 3*i, ent->animcache_vertexmesh[i].vertex3f); + memcpy(ent->animcache_vertexmesh[i].vertex3f, ent->animcache_vertex3f + 3*i, sizeof(float[3])); if (ent->animcache_svector3f) for (i = 0;i < numvertices;i++) - VectorCopy(ent->animcache_svector3f + 3*i, ent->animcache_vertexmesh[i].svector3f); + memcpy(ent->animcache_vertexmesh[i].svector3f, ent->animcache_svector3f + 3*i, sizeof(float[3])); if (ent->animcache_tvector3f) for (i = 0;i < numvertices;i++) - VectorCopy(ent->animcache_tvector3f + 3*i, ent->animcache_vertexmesh[i].tvector3f); + memcpy(ent->animcache_vertexmesh[i].tvector3f, ent->animcache_tvector3f + 3*i, sizeof(float[3])); if (ent->animcache_normal3f) for (i = 0;i < numvertices;i++) - VectorCopy(ent->animcache_normal3f + 3*i, ent->animcache_vertexmesh[i].normal3f); + memcpy(ent->animcache_vertexmesh[i].normal3f, ent->animcache_normal3f + 3*i, sizeof(float[3])); // TODO: upload vertex buffer? } } -- 2.39.2