33 lines
1.6 KiB
C
33 lines
1.6 KiB
C
|
// Copyright (C) 2007 Id Software, Inc.
|
||
|
//
|
||
|
|
||
|
#ifndef __MATH_SIMD_SSE3_H__
|
||
|
#define __MATH_SIMD_SSE3_H__
|
||
|
|
||
|
/*
|
||
|
===============================================================================
|
||
|
|
||
|
SSE3 implementation of idSIMDProcessor
|
||
|
|
||
|
===============================================================================
|
||
|
*/
|
||
|
|
||
|
class idSIMD_SSE3 : public idSIMD_SSE2 {
|
||
|
#ifdef ID_WIN_X86_ASM
|
||
|
public:
|
||
|
virtual const char * VPCALL GetName( void ) const;
|
||
|
|
||
|
virtual void VPCALL TransformVerts( idDrawVert *verts, const int numVerts, const idJointMat *joints, const idVec4 *base, const jointWeight_t *weights, const int numWeights );
|
||
|
virtual void VPCALL TransformShadowVerts( idDrawVert *verts, const int numVerts, const idJointMat *joints, const idDrawVert *base, const jointWeight_t *weights, const int numWeights );
|
||
|
virtual void VPCALL TransformShadowVerts( idDrawVert *verts, const int numVerts, const idJointMat *joints, const idDrawVert *base, const short *weights, const int numWeights );
|
||
|
virtual void VPCALL TransformShadowVerts( struct shadowCache_s *verts, const int numVerts, const idJointMat *joints, const idDrawVert *base, const short *weights, const int numWeights );
|
||
|
#if !defined(SD_USE_DRAWVERT_SIZE_32)
|
||
|
virtual void VPCALL TransformVertsAndTangents( idDrawVert *verts, const int numVerts, const idJointMat *joints, const idVec4 *base, const jointWeight_t *weights, const int numWeights );
|
||
|
virtual void VPCALL TransformVertsAndTangentsFast( idDrawVert *verts, const int numVerts, const idJointMat *joints, const idVec4 *base, const jointWeight_t *weights, const int numWeights );
|
||
|
#endif
|
||
|
|
||
|
#endif
|
||
|
};
|
||
|
|
||
|
#endif /* !__MATH_SIMD_SSE3_H__ */
|