Fixed Altivec-based mesh rendering.

This commit is contained in:
Ryan C. Gordon 2005-12-04 14:23:46 +00:00
parent e67d270f2a
commit dd4dce194e
2 changed files with 19 additions and 19 deletions

View file

@ -615,8 +615,10 @@ static void LerpMeshVertexes_altivec(md3Surface_t *surf, float backlerp)
{
short *oldXyz, *newXyz, *oldNormals, *newNormals;
float *outXyz, *outNormal;
float oldXyzScale, newXyzScale;
float oldNormalScale, newNormalScale;
float oldXyzScale ALIGN16;
float newXyzScale ALIGN16;
float oldNormalScale ALIGN16;
float newNormalScale ALIGN16;
int vertNum;
unsigned lat, lng;
int numVerts;
@ -839,20 +841,11 @@ static void LerpMeshVertexes_scalar(md3Surface_t *surf, float backlerp)
static void LerpMeshVertexes(md3Surface_t *surf, float backlerp)
{
#if idppc_altivec
// !!! FIXME: figure out what's broken and remove this.
#ifndef NDEBUG
static int already_complained = 0;
if (!already_complained) {
already_complained = 1;
Com_Printf("WARNING! FIXME! Altivec mesh lerping broken in debug builds!\n");
}
#else
if (com_altivec->integer) {
// must be in a seperate function or G3 systems will crash.
LerpMeshVertexes_altivec( surf, backlerp );
return;
}
#endif
#endif // idppc_altivec
LerpMeshVertexes_scalar( surf, backlerp );
}