【问题标题】:unity netcode for gameobjects client not connecting游戏对象客户端的统一网络代码未连接
【发布时间】:2022-11-09 23:09:30
【问题描述】:

有人可以帮助我吗?我一直在尝试将我的客户端连接到主机,但统一一直向我发送此错误消息

网络代码] 收到延迟消息,触发类型为 OnSpawn 且键为 2,但在 1 秒内未收到该触发器。 UnityEngine.Debug:LogWarning(对象) Unity.Netcode.NetworkLog:LogWarning(字符串)(在 Library/PackageCache/com.unity.netcode.gameobjects@1.0.0/Runtime/Logging/NetworkLog.cs:28) Unity.Netcode.DeferredMessageManager:PurgeTrigger (Unity.Netcode.IDeferredMessageManager/TriggerType,ulong,Unity.Netcode.DeferredMessageManager/TriggerInfo) (在Library/PackageCache/com.unity.netcode.gameobjects@1.0.0/Runtim

【问题讨论】:

    标签: c# unity3d


    【解决方案1】:

    在我的情况下,我忘记在我的结构中实现 INetworkSerializable ,一旦我这样做了,一切都很好:

    private struct ToolInfo : INetworkSerializable
    {
        public Quaternion rot;
        public Vector3 pos;
        public Item.ItemInfo item;
    
        public void NetworkSerialize<T>(BufferSerializer<T> serializer) where T : IReaderWriter
        {
            if (serializer.IsReader)
            {
                var reader = serializer.GetFastBufferReader();
                reader.ReadValueSafe(out rot);
                reader.ReadValueSafe(out pos);
                reader.ReadValueSafe(out item);
            }
            else
            {
                var writer = serializer.GetFastBufferWriter();
                writer.WriteValueSafe(rot);
                writer.WriteValueSafe(pos);
                writer.WriteValueSafe(item);
            }
        }
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2022-08-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多