@@ -13,6 +13,8 @@ public class NetworkedAnimator : NetworkedBehaviour
13
13
[ SerializeField ] uint m_ParameterSendBits ;
14
14
[ SerializeField ] float m_SendRate = 0.1f ;
15
15
16
+ AnimatorControllerParameter [ ] m_AnimatorParameters ;
17
+
16
18
// properties
17
19
public Animator animator
18
20
{
@@ -72,6 +74,7 @@ public void ResetParameterOptions()
72
74
{
73
75
Debug . Log ( "ResetParameterOptions" ) ;
74
76
m_ParameterSendBits = 0 ;
77
+ m_AnimatorParameters = null ;
75
78
}
76
79
77
80
void FixedUpdate ( )
@@ -245,12 +248,13 @@ internal void HandleAnimTriggerMsg(int clientId, byte[] data)
245
248
246
249
void WriteParameters ( BinaryWriter writer , bool autoSend )
247
250
{
248
- for ( int i = 0 ; i < m_Animator . parameters . Length ; i ++ )
251
+ if ( m_AnimatorParameters == null ) m_AnimatorParameters = m_Animator . parameters ;
252
+ for ( int i = 0 ; i < m_AnimatorParameters . Length ; i ++ )
249
253
{
250
254
if ( autoSend && ! GetParameterAutoSend ( i ) )
251
255
continue ;
252
256
253
- AnimatorControllerParameter par = m_Animator . parameters [ i ] ;
257
+ AnimatorControllerParameter par = m_AnimatorParameters [ i ] ;
254
258
if ( par . type == AnimatorControllerParameterType . Int )
255
259
{
256
260
writer . Write ( ( uint ) m_Animator . GetInteger ( par . nameHash ) ) ;
@@ -276,12 +280,13 @@ void WriteParameters(BinaryWriter writer, bool autoSend)
276
280
277
281
void ReadParameters ( BinaryReader reader , bool autoSend )
278
282
{
279
- for ( int i = 0 ; i < m_Animator . parameters . Length ; i ++ )
283
+ if ( m_AnimatorParameters == null ) m_AnimatorParameters = m_Animator . parameters ;
284
+ for ( int i = 0 ; i < m_AnimatorParameters . Length ; i ++ )
280
285
{
281
286
if ( autoSend && ! GetParameterAutoSend ( i ) )
282
287
continue ;
283
288
284
- AnimatorControllerParameter par = m_Animator . parameters [ i ] ;
289
+ AnimatorControllerParameter par = m_AnimatorParameters [ i ] ;
285
290
if ( par . type == AnimatorControllerParameterType . Int )
286
291
{
287
292
int newValue = ( int ) reader . ReadUInt32 ( ) ;
0 commit comments