2015-11-29 3 views
1

При попытке использовать NetworkServer.Spawn для создания объекта с Rigidbody и NetworkTransform набор для синхронизации Rigidbody 3D, я получаю это:NullReferenceException при использовании NetworkTransform с RigidBody

NullReferenceException: Ссылка на объект не установлено к экземпляру объекта UnityEngine.Networking.NetworkTransform.SerializeMode3D (UnityEngine.Networking.NetworkWriter писателем) (на C: /buildslave/unity/build/Extensions/Networking/Runtime/NetworkTransform.cs: 251)

ответ

1

Я звонил в NetworkServer.Spawn в Awak e другого компонента до того, как компонент NetworkTransform проснулся. Поскольку OnSerialize происходит, как только вы вызываете spawn, он пытается вытащить данные из неинициализированной ссылки на Rigidbody.

UNET теперь с открытым исходным кодом, а код NetworkTransform можно найти here. Было полезно для отладки этого!

2

Если это произошло, если вы считаете, что ничего не изменили, возможно, это связано с тем, что вы отключили свой игровой объект prefab. Случилось со мной, поэтому я подумал, что наденю его здесь, если это случится с кем-то еще :)

Смежные вопросы