File tree Expand file tree Collapse file tree 1 file changed +21
-1
lines changed
CustomizePlus/Armatures/Data Expand file tree Collapse file tree 1 file changed +21
-1
lines changed Original file line number Diff line number Diff line change @@ -172,12 +172,32 @@ public bool IsSkeletonUpdated(CharacterBase* cBase)
172
172
{
173
173
for ( var i = 0 ; i < cBase ->Skeleton ->PartialSkeletonCount ; ++ i )
174
174
{
175
+ if ( i == 2 )
176
+ continue ; //hair is handled separately
177
+
175
178
var newPose = cBase ->Skeleton ->PartialSkeletons [ i ] . GetHavokPose ( Constants . TruePoseIndex ) ;
176
179
177
180
if ( newPose != null
178
181
&& newPose ->Skeleton ->Bones . Length != _partialSkeletons [ i ] . Length )
179
182
return true ;
180
- //todo: compare bones for hair partial skeleton [2]
183
+ }
184
+
185
+ //handle hair separately because different hairstyles can have the same amount of bones.
186
+ if ( cBase ->Skeleton ->PartialSkeletonCount > 2 )
187
+ {
188
+ var newPose = cBase ->Skeleton ->PartialSkeletons [ 2 ] . GetHavokPose ( Constants . TruePoseIndex ) ;
189
+
190
+ if ( newPose != null )
191
+ {
192
+ if ( newPose ->Skeleton ->Bones . Length != _partialSkeletons [ 2 ] . Length )
193
+ return true ;
194
+
195
+ for ( var i = 0 ; i < newPose ->Skeleton ->Bones . Length ; i ++ )
196
+ {
197
+ if ( newPose ->Skeleton ->Bones [ i ] . Name . String != _partialSkeletons [ 2 ] [ i ] . BoneName )
198
+ return true ;
199
+ }
200
+ }
181
201
}
182
202
}
183
203
You can’t perform that action at this time.
0 commit comments