网页资讯视频图片知道文库贴吧地图采购
进入贴吧全吧搜索

 
 
 
日一二三四五六
       
       
       
       
       
       

签到排名:今日本吧第个签到,

本吧因你更精彩,明天继续来努力!

本吧签到人数:0

一键签到
成为超级会员,使用一键签到
一键签到
本月漏签0次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行补签。
连续签到:天  累计签到:天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
08月15日漏签0天
unity吧 关注:51,694贴子:144,831
  • 看贴

  • 图片

  • 吧主推荐

  • 游戏

  • 16回复贴,共1页
<<返回unity吧
>0< 加载中...

同步昵称数据溢出,试过很多办法了,ai也用了解决不了

  • 只看楼主
  • 收藏

  • 回复
  • yaohaor11111
  • 小有美名
    5
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
Netcode for GameObjects同步昵称时间积分,一直数据溢出,
试过很多办法了,ai也用了解决不了,官方文档也看了。。我还看了官方项目,一模一样写,人家可以我就是不行,,我现在简化了就昵称,还是不行呀。。Netcode for GameObjects卸载了在重新下载了
OverflowException: Reading past the end of the buffer
namespace Unity.Multiplayer.Samples.BossRoom
{
public class PlayerNetworkState : NetworkBehaviour
{
public NetworkVariable<FixedPlayerName> PlayerName = new NetworkVariable<FixedPlayerName>();
public void InitializePlayer(string username)
{
if (IsServer)
{
PlayerName.Value = username;
}
}
}
public struct FixedPlayerName : INetworkSerializable
{
FixedString32Bytes m_Name;
public void NetworkSerialize<T>(BufferSerializer<T> serializer) where T : IReaderWriter
{
serializer.SerializeValue(ref m_Name);
}
public override string ToString()
{
return m_Name.Value.ToString();
}
public static implicit operator string(FixedPlayerName s) => s.ToString();
public static implicit operator FixedPlayerName(string s) => new FixedPlayerName() { m_Name = new FixedString32Bytes(s) };
}
}


  • yaohaor11111
  • 小有美名
    5
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
NetworkManager.Singleton.StartClient(); NetworkManager.Singleton.OnClientConnectedCallback += TransferData;public void TransferData(ulong clientId) { Debug.Log($"客户端已连接: {clientId}"); if (clientId == NetworkManager.Singleton.LocalClientId) { // 使用协程等待直到GemRed1存在 StartCoroutine(ObtainObjects()); } }public IEnumerator ObtainObjects() { if (NetworkManager.Singleton.LocalClient.PlayerObject.TryGetComponent(out PlayerNetworkState playerNetworkState)) { // 在这里赋值时间积分昵称 playerNetworkState.InitializePlayer(username); Debug.LogError(username); } else { Debug.LogError("PlayerNetworkState 组件未挂载!"); } // 返回一个空的IEnumerator,确保所有代码路径都返回值 yield return null;}Netcode for GameObjects同步昵称时间积分,一直数据溢出, 试过很多办法了,ai也用了解决不了,官方文档也看了。。我还看了官方项目,一模一样写,人家可以我就是不行,,我现在简化了就昵称,还是不行呀。。Netcode for GameObjects卸载了在重新下载了


2025-08-15 13:29:31
广告
不感兴趣
开通SVIP免广告
  • yaohaor11111
  • 小有美名
    5
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
在线等


  • yaohaor11111
  • 小有美名
    5
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
public NetworkVariable<int> Score = new NetworkVariable<int>();
public NetworkVariable<float> TimeRemaining = new NetworkVariable<float>();
public void InitializePlayer(string username)
{
if (IsServer)
{
// 初始化玩家数据
Score.Value = 0;
TimeRemaining.Value = 180.0f; // 示例:3分钟倒计时
}
}
public void AddScore(int points)
{
if (IsServer)
{
Score.Value += points;
// 同步积分和时间
SyncScoreAndTime();
}
}
public void UpdateTime(float deltaTime)
{
if (IsServer)
{
TimeRemaining.Value -= deltaTime;
if (TimeRemaining.Value <= 0)
{
TimeRemaining.Value = 0;
}
}
}
private void SyncScoreAndTime()
{
// 使用 FastBufferWriter 写入积分和时间数据
using (FastBufferWriter writer = new FastBufferWriter(1024, Allocator.TempJob, 2048))
{
int requiredSize = sizeof(int) + sizeof(float);
if (!writer.TryBeginWrite(requiredSize))
{
Debug.LogError("缓冲区空间不足,无法写入分数和时间.");
return;
}
writer.WriteValue(Score.Value);
writer.WriteValue(TimeRemaining.Value);
// 调用 RPC 方法发送数据到所有客户端
SendScoreAndTimeClientRpc(writer.ToArray());
}
}
[ClientRpc]
private void SendScoreAndTimeClientRpc(byte[] buffer)
{
// 使用 FastBufferReader 读取积分和时间数据
using (FastBufferReader reader = new FastBufferReader(buffer, Allocator.None))
{
int expectedSize = sizeof(int) + sizeof(float);
if (!reader.TryBeginRead(expectedSize))
{
Debug.LogError("缓冲区中没有足够的数据来读取分数和时间.");
return;
}
int score;
float timeRemaining;
// 读取整型值(积分)
reader.ReadValue(out score);
// 读取浮点型值(剩余时间)
reader.ReadValue(out timeRemaining);
// 更新本地玩家的积分和时间
Score.Value = score;
TimeRemaining.Value = timeRemaining;
}
}
不行OverflowException: Reading past the end of the buffer


  • yaohaor11111
  • 小有美名
    5
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
有木有能指点一二的


  • yaohaor11111
  • 小有美名
    5
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
急急跪求大佬指点一二,,在线等等


  • yaohaor11111
  • 小有美名
    5
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
请求帮忙




  • yaohaor11111
  • 小有美名
    5
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
有没有大佬可怜可怜我


2025-08-15 13:23:31
广告
不感兴趣
开通SVIP免广告
  • yaohaor11111
  • 小有美名
    5
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
求关注


  • 终于听见下雨的声音呀
  • 富有美誉
    9
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
试试延迟一帧去设置


  • 好运的UFO
  • 闻名一方
    11
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
提供给你一个解决思路,把消息结构体定义为全局变量或者在每次加载完毕后都需要释放资源,然后你再试试


  • yaohaor11111
  • 小有美名
    5
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
没用


  • 闇閱2333
  • 默默无闻
    1
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
看一下你的回调事件是不是一直在触发,具体哪一行报错列个图吧


登录百度账号

扫二维码下载贴吧客户端

下载贴吧APP
看高清直播、视频!
  • 贴吧页面意见反馈
  • 违规贴吧举报反馈通道
  • 贴吧违规信息处理公示
  • 16回复贴,共1页
<<返回unity吧
分享到:
©2025 Baidu贴吧协议|隐私政策|吧主制度|意见反馈|网络谣言警示