Skip to content

Commit de64f25

Browse files
committed
.
1 parent dc1a501 commit de64f25

File tree

2 files changed

+14
-6
lines changed

2 files changed

+14
-6
lines changed

src/engine/client/cg_msgdef.h

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -99,15 +99,14 @@ namespace Util {
9999
template<> struct SerializeTraits<std::vector<BoneMod>> {
100100
static void Write( Writer& stream, const std::vector<BoneMod>& boneMods ) {
101101
stream.WriteSize( boneMods.size() );
102-
// stream.Write<float>( skel.scale );
103-
// size_t length = sizeof( refBone_t ) * skel.numBones;
104-
stream.WriteData( boneMods.data(), boneMods.size() );
102+
stream.WriteData( boneMods.data(), boneMods.size() * sizeof( BoneMod ) );
105103
}
104+
106105
static std::vector<BoneMod> Read( Reader& stream ) {
107106
std::vector<BoneMod> boneMods;
108-
boneMods.reserve( stream.ReadSize<BoneMod>() );
109-
size_t length = sizeof( refBone_t ) * boneMods.size();
110-
stream.ReadData( boneMods.data(), length );
107+
const size_t size = stream.ReadSize<BoneMod>();
108+
boneMods.resize( size );
109+
stream.ReadData( boneMods.data(), size * sizeof( BoneMod ) );
111110
return boneMods;
112111
}
113112
};
@@ -120,6 +119,7 @@ namespace Util {
120119
stream.Write<std::vector<BoneMod>>( ent.boneMods );
121120
// stream.Write<refSkeleton_t>(ent.skeleton);
122121
}
122+
123123
static refEntity_t Read(Reader& stream)
124124
{
125125
refEntity_t ent;

src/engine/renderer/tr_main.cpp

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2123,6 +2123,10 @@ void R_AddEntitySurfaces()
21232123
ent->e.lerp2, ent->e.clearOrigin2 );
21242124
RE_BlendSkeleton( &ent->e.skeleton, &skel, ent->e.blendLerp );
21252125
}
2126+
2127+
for ( const BoneMod& boneMod : ent->e.boneMods ) {
2128+
QuatMultiply2( ent->e.skeleton.bones[boneMod.index].t.rot, boneMod.rotation );
2129+
}
21262130
R_AddMD5Surfaces( ent );
21272131
break;
21282132

@@ -2152,6 +2156,10 @@ void R_AddEntitySurfaces()
21522156
RE_BlendSkeleton( &ent->e.skeleton, &skel, ent->e.blendLerp );
21532157
}
21542158
R_TransformSkeleton( &ent->e.skeleton, ent->e.scale );
2159+
2160+
for ( const BoneMod& boneMod : ent->e.boneMods ) {
2161+
QuatMultiply2( ent->e.skeleton.bones[boneMod.index].t.rot, boneMod.rotation );
2162+
}
21552163
R_AddIQMSurfaces( ent );
21562164
break;
21572165
}

0 commit comments

Comments
 (0)