Skip to content

Commit e8ed3cc

Browse files
committed
Remove some unused q_math transform_t functions
I've kept some of them which are unused but are needed to have a complete API, such as TransInsTranslation. Removed ones are either about multiplying by an inverse, or specify a rotation in radians (which is at odds with the codebase that uses degrees 99% of the time).
1 parent 077da04 commit e8ed3cc

File tree

2 files changed

+0
-86
lines changed

2 files changed

+0
-86
lines changed

src/engine/qcommon/q_math.cpp

Lines changed: 0 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -3206,26 +3206,12 @@ void TransformPoint( const transform_t *t, const vec3_t in, vec3_t out )
32063206
VectorScale( out, t->scale, out );
32073207
VectorAdd( out, t->trans, out );
32083208
}
3209-
// apply the inverse of a transform to a point
3210-
void TransformPointInverse( const transform_t *t, const vec3_t in, vec3_t out )
3211-
{
3212-
VectorSubtract( in, t->trans, out );
3213-
VectorScale( out, 1.0f / t->scale, out );
3214-
QuatTransformVectorInverse( t->rot, out, out );
3215-
}
32163209

32173210
// apply a transform to a normal vector (ignore scale and translation)
32183211
void TransformNormalVector( const transform_t *t, const vec3_t in, vec3_t out )
32193212
{
32203213
QuatTransformVector( t->rot, in, out );
32213214
}
3222-
// apply the inverse of a transform to a normal vector (ignore scale
3223-
// and translation)
3224-
void TransformNormalVectorInverse( const transform_t *t, const vec3_t in,
3225-
vec3_t out )
3226-
{
3227-
QuatTransformVectorInverse( t->rot, in, out );
3228-
}
32293215

32303216
// initialize a transform with a pure rotation
32313217
void TransInitRotationQuat( const quat_t quat, transform_t *t )
@@ -3234,16 +3220,6 @@ void TransInitRotationQuat( const quat_t quat, transform_t *t )
32343220
VectorClear( t->trans );
32353221
t->scale = 1.0f;
32363222
}
3237-
void TransInitRotation( const vec3_t axis, float angle, transform_t *t )
3238-
{
3239-
float sa = sinf( 0.5f * angle );
3240-
float ca = cosf( 0.5f * angle );
3241-
quat_t q;
3242-
3243-
VectorScale( axis, sa, q );
3244-
q[3] = ca;
3245-
TransInitRotationQuat( q, t );
3246-
}
32473223
// initialize a transform with a pure translation
32483224
void TransInitTranslation( const vec3_t vec, transform_t *t )
32493225
{
@@ -3286,16 +3262,6 @@ void TransAddRotationQuat( const quat_t quat, transform_t *t )
32863262
QuatMultiply2( tmp, t->rot );
32873263
QuatCopy( tmp, t->rot );
32883264
}
3289-
void TransAddRotation( const vec3_t axis, float angle, transform_t *t )
3290-
{
3291-
float sa = sinf( 0.5f * angle );
3292-
float ca = cosf( 0.5f * angle );
3293-
quat_t q;
3294-
3295-
VectorScale( axis, sa, q );
3296-
q[3] = ca;
3297-
TransAddRotationQuat( q, t );
3298-
}
32993265

33003266
// add a scale to the start of an existing transform
33013267
void TransInsScale( float factor, transform_t *t )

src/engine/qcommon/q_shared.h

Lines changed: 0 additions & 52 deletions
Original file line numberDiff line numberDiff line change
@@ -1246,14 +1246,6 @@ inline vec_t VectorNormalize2( const vec3_t v, vec3_t out )
12461246
t = _mm_mul_ps( sseSwizzle( q, WWWW ), t );
12471247
return _mm_add_ps( _mm_add_ps( vec, t2 ), t );
12481248
}
1249-
inline __m128 sseQuatTransformInverse( __m128 q, __m128 vec ) {
1250-
__m128 t, t2;
1251-
t = sseCrossProduct( vec, q );
1252-
t = _mm_add_ps( t, t );
1253-
t2 = sseCrossProduct( t, q );
1254-
t = _mm_mul_ps( sseSwizzle( q, WWWW ), t );
1255-
return _mm_add_ps( _mm_add_ps( vec, t2 ), t );
1256-
}
12571249
inline __m128 sseLoadVec3( const vec3_t vec ) {
12581250
__m128 v = _mm_load_ss( &vec[ 2 ] );
12591251
v = sseSwizzle( v, YYXY );
@@ -1282,43 +1274,17 @@ inline vec_t VectorNormalize2( const vec3_t v, vec3_t out )
12821274
tmp = _mm_add_ps( tmp, ts );
12831275
sseStoreVec3( tmp, out );
12841276
}
1285-
inline void TransformPointInverse(
1286-
const transform_t *t, const vec3_t in, vec3_t out ) {
1287-
__m128 ts = t->sseTransScale;
1288-
__m128 v = _mm_sub_ps( sseLoadVec3Unsafe( in ), ts );
1289-
v = _mm_mul_ps( v, _mm_rcp_ps( sseSwizzle( ts, WWWW ) ) );
1290-
v = sseQuatTransformInverse( t->sseRot, v );
1291-
sseStoreVec3( v, out );
1292-
}
12931277
inline void TransformNormalVector(
12941278
const transform_t *t, const vec3_t in, vec3_t out ) {
12951279
__m128 v = sseLoadVec3Unsafe( in );
12961280
v = sseQuatTransform( t->sseRot, v );
12971281
sseStoreVec3( v, out );
12981282
}
1299-
inline void TransformNormalVectorInverse( const transform_t *t,
1300-
const vec3_t in, vec3_t out ) {
1301-
__m128 v = sseLoadVec3Unsafe( in );
1302-
v = sseQuatTransformInverse( t->sseRot, v );
1303-
sseStoreVec3( v, out );
1304-
}
1305-
inline __m128 sseAxisAngleToQuat( const vec3_t axis, float angle ) {
1306-
__m128 sa = _mm_set1_ps( sinf( 0.5f * angle ) );
1307-
__m128 ca = _mm_set1_ps( cosf( 0.5f * angle ) );
1308-
__m128 a = sseLoadVec3( axis );
1309-
a = _mm_mul_ps( a, sa );
1310-
return _mm_or_ps( a, _mm_and_ps( ca, mask_000W() ) );
1311-
}
13121283
inline void TransInitRotationQuat( const quat_t quat,
13131284
transform_t *t ) {
13141285
t->sseRot = _mm_loadu_ps( quat );
13151286
t->sseTransScale = unitQuat();
13161287
}
1317-
inline void TransInitRotation( const vec3_t axis, float angle,
1318-
transform_t *t ) {
1319-
t->sseRot = sseAxisAngleToQuat( axis, angle );
1320-
t->sseTransScale = unitQuat();
1321-
}
13221288
inline void TransInitTranslation( const vec3_t vec, transform_t *t ) {
13231289
__m128 v = sseLoadVec3( vec );
13241290
t->sseRot = unitQuat();
@@ -1334,26 +1300,13 @@ inline vec_t VectorNormalize2( const vec3_t v, vec3_t out )
13341300
__m128 q = _mm_loadu_ps( quat );
13351301
t->sseRot = sseQuatMul( t->sseRot, q );
13361302
}
1337-
inline void TransInsRotation( const vec3_t axis, float angle,
1338-
transform_t *t ) {
1339-
__m128 q = sseAxisAngleToQuat( axis, angle );
1340-
t->sseRot = sseQuatMul( q, t->sseRot );
1341-
}
13421303
inline void TransAddRotationQuat( const quat_t quat, transform_t *t ) {
13431304
__m128 q = _mm_loadu_ps( quat );
13441305
__m128 transformed = sseQuatTransform( q, t->sseTransScale );
13451306
t->sseRot = sseQuatMul( q, t->sseRot );
13461307
t->sseTransScale = _mm_or_ps( _mm_and_ps( transformed, mask_XYZ0() ),
13471308
_mm_and_ps( t->sseTransScale, mask_000W() ) );
13481309
}
1349-
inline void TransAddRotation( const vec3_t axis, float angle,
1350-
transform_t *t ) {
1351-
__m128 q = sseAxisAngleToQuat( axis, angle );
1352-
__m128 transformed = sseQuatTransform( q, t->sseTransScale );
1353-
t->sseRot = sseQuatMul( t->sseRot, q );
1354-
t->sseTransScale = _mm_or_ps( _mm_and_ps( transformed, mask_XYZ0() ),
1355-
_mm_and_ps( t->sseTransScale, mask_000W() ) );
1356-
}
13571310
inline void TransInsScale( float factor, transform_t *t ) {
13581311
t->scale *= factor;
13591312
}
@@ -1424,20 +1377,15 @@ inline vec_t VectorNormalize2( const vec3_t v, vec3_t out )
14241377
void TransInit( transform_t *t );
14251378

14261379
void TransformPoint( const transform_t *t, const vec3_t in, vec3_t out );
1427-
void TransformPointInverse( const transform_t *t, const vec3_t in, vec3_t out );
14281380
void TransformNormalVector( const transform_t *t, const vec3_t in, vec3_t out );
1429-
void TransformNormalVectorInverse( const transform_t *t, const vec3_t in, vec3_t out );
14301381

14311382
void TransInitRotationQuat( const quat_t quat, transform_t *t );
1432-
void TransInitRotation( const vec3_t axis, float angle,
1433-
transform_t *t );
14341383
void TransInitTranslation( const vec3_t vec, transform_t *t );
14351384
void TransInitScale( float factor, transform_t *t );
14361385

14371386
void TransInsRotationQuat( const quat_t quat, transform_t *t );
14381387
void TransInsRotation( const vec3_t axis, float angle, transform_t *t );
14391388
void TransAddRotationQuat( const quat_t quat, transform_t *t );
1440-
void TransAddRotation( const vec3_t axis, float angle, transform_t *t );
14411389
void TransInsScale( float factor, transform_t *t );
14421390
void TransAddScale( float factor, transform_t *t );
14431391
void TransInsTranslation( const vec3_t vec, transform_t *t );

0 commit comments

Comments
 (0)