news 2026/4/18 11:56:03

帧同步和状态同步

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
帧同步和状态同步

一、例子

1.从小霸王游戏机帧同步,没有服务器,但是搜集每个手柄操作。 发的是向上的指令,一个人是向上+攻击指令。

2.军队中,每个人抬腿,你说1大家都抬左腿,说2都抬右腿,这样子一直持续下去,队列往前走。

这样子保证每个客户端状态都一样,

因为:有了相同的指令,每个逻辑帧相同的时间,就能确保它状态一致。

3.每个车以60公里的速度往前行走,行走了3s,每个客户端都这样子算的话,是不是走了距离是一样。

二、帧同步得核心理念

状态同步的话,则是服务器计算好,客户端直接显示就行。帧同步则只同步玩家输入指令,比如:向上走了,按了攻击键了。 像王者荣耀上的按钮,不要理解成一个技能,而是理解成按钮,1是普攻,2是跳起来打人,3是大招,你按1,则转发给服务器,服务器转发给你1,所有客户端都执行1的按钮,这样子就会释放同一个技能。 咱们要让所有的客户端在相同的逻辑帧在相同的时间执行相同的操作。 做的时候想想概念,走正步。

三、

帧同步采集的是指令而不是数据。

帧同步解决同步一致性的问题。

四、tcp、udp的选择

tcp可靠性的意思:

确保数据到达。

有重传机制, 网络差的时候延时高。

udp

不可靠连接: 不能保证数据送达,不保证顺序。

没有重连机制,丢了就丢了。

因为没有tcp重传机制,可以在延迟低的情况下自定义重发机制,所以延迟相对tcp低。

帧同步更适合udp:

帧同步通常是连续的数据流。

一帧丢了,下一帧会覆盖更新。

可以通过这弄不的逻辑来避免消息顺序问题。

可以自定义或者干脆不做确认机制。

带来了更低的延迟。

补帧、追帧、跳帧。

包序号控制。

但是:现在网络环境已经足够好,不是必须得udp.

五、实现帧调度机制

1.建立固定的逻辑帧率,比如:每秒20帧或30帧,客户端按照固定间隔执行逻辑帧,不受渲染帧率影响

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/18 8:28:03

Chrony 离线与在线安装 配置

第1章 在线安装 # APT 系统 (Debian/Ubuntu) sudo apt install chrony# YUM 系统 (RHEL/CentOS 7) sudo yum install chrony# DNF 系统 (RHEL/CentOS 8) sudo dnf install chrony第2章 离线安装(小型局域网不能上网) 访问 Chrony 下载页面在历史版本中找到 Chrony 2.2.1 版本…

作者头像 李华
网站建设 2026/4/18 8:55:57

如何解决 OpenClaw “Pairing required” 报错:两种官方解决方案详解

如何解决 OpenClaw “Pairing required” 报错:两种官方解决方案详解 当你第一次连接 OpenClaw Gateway 或在新的浏览器/设备上访问控制面板时,系统会抛出 disconnected (1008): pairing required 错误。这是 OpenClaw 的安全配对机制在起作用——类似于…

作者头像 李华
网站建设 2026/4/18 3:12:06

消费市场步入精算时代,品牌新品如何做到叫好又叫座?

2025年,消费行业步入精算时代,消费者变得越发理性,购买行为变成了一个拿着放大镜筛选的过程。随着消费者对品牌营销故事逐渐祛魅,转而将注意力放在产品本身,如何穿透消费者的层层筛选,打造一个既叫好又叫座…

作者头像 李华
网站建设 2026/4/18 8:30:04

面试官:为什么 Java 不支持多继承?

在线 Java 面试刷题(持续更新):https://www.quanxiaoha.com/java-interview 面试考察点 面试官提出这个问题,通常旨在考察以下几个层面: 对面向对象设计原则的理解:面试官不仅仅是想知道 “不支持” 这个事…

作者头像 李华
网站建设 2026/4/18 8:39:10

【2026】 LLM 大模型系统学习指南 (50)

AI 村民的虚拟村庄:多智能体协同的趣味探索当多个 AI 扮演的 “村民” 被放入一个虚拟村庄,会发生什么?它们不会只是孤立地重复指令,反而会自发互动、形成社交关系、协作完成任务,甚至演变出独特的 “村庄文化”—— 这…

作者头像 李华
网站建设 2026/4/18 8:15:23

计算机毕设Java框架的营养师服务管理系统 基于SpringBoot的营养师在线服务平台设计与实现 JavaWeb框架下的智慧营养顾问管理系统开发

计算机毕设Java框架的营养师服务管理系统qo70t9(配套有源码 程序 mysql数据库 论文) 本套源码可以在文本联xi,先看具体系统功能演示视频领取,可分享源码参考。近年来,健康管理需求日益增长,公众对专业营养指导的渴求推…

作者头像 李华