惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Hugging Face - Blog
Hugging Face - Blog
Jina AI
Jina AI
宝玉的分享
宝玉的分享
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
人人都是产品经理
人人都是产品经理
博客园 - 聂微东
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
J
Java Code Geeks
博客园 - 【当耐特】
小众软件
小众软件
博客园 - Franky
S
SegmentFault 最新的问题
WordPress大学
WordPress大学
雷峰网
雷峰网
The Cloudflare Blog
酷 壳 – CoolShell
酷 壳 – CoolShell
量子位
Last Week in AI
Last Week in AI
博客园_首页
月光博客
月光博客
IT之家
IT之家
阮一峰的网络日志
阮一峰的网络日志
Webroot Blog
Webroot Blog
Stack Overflow Blog
Stack Overflow Blog
腾讯CDC
云风的 BLOG
云风的 BLOG
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
W
WeLiveSecurity
Recent Commits to openclaw:main
Recent Commits to openclaw:main
D
Docker
The Last Watchdog
The Last Watchdog
有赞技术团队
有赞技术团队
Hacker News - Newest:
Hacker News - Newest: "LLM"
D
DataBreaches.Net
S
Security @ Cisco Blogs
Blog — PlanetScale
Blog — PlanetScale
GbyAI
GbyAI
TaoSecurity Blog
TaoSecurity Blog
S
Security Affairs
Y
Y Combinator Blog
O
OpenAI News
罗磊的独立博客
MongoDB | Blog
MongoDB | Blog
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
Forbes - Security
Forbes - Security
P
Palo Alto Networks Blog
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
K
Kaspersky official blog
Cloudbric
Cloudbric

博客园 - BackSword

unity ui canvas shader texcoord.zw is not used for ui particle 问题记录,unity shaderlab 模版写入问题 textmeshpro 放大缩小出现黑色边框问题,修改shader FXAA 在桌面平台更高效的原因,MSAA在手机端更高效 glados优惠码 C# Array.Fill 值类型优化。 git 设置github代理 unity physics bug win10 ctrl+space 快捷键冲突问题 msvc C++编译链接 切线空间 c++局部静态变量是线程安全的 c++函数参数和返回值 c++返回值不能是右值对象 分享mkgmttime自实现功能。 关于socket通信中大小端转换问题 wpf clickonece 坑 [修复] 启动期间超频失败的错误信息 template return value error C2440: “初始化”: 无法从“const T”转换为“const Player *&”
状态同步
BackSword · 2022-12-26 · via 博客园 - BackSword

状态同步

状态同步

  • 服务器每隔100ms 处理一次客户端的输入,并转发状态给其他客户端
  • 客户端预先模拟,而看其他的客户端是过去时100ms之前的状态插值
  • 当产生伤害计算的时候,需要根据时间戳来获取那个时刻的客户端状态,不可超过配置的ms时长(打1s之前的人,对1s之前的人是不是不公平),如果超过则网络误差太大,则判断为失效。
  • 玩家看其他玩家是过去的一个虚影,当玩家和另一个玩家有碰撞阻拦的情况下,是无法拦住过去的虚影的。
  • 击中其他玩家的时候,因为是过去状态的虚影,而通过客户端可以表现动画,但是服务器决定是否命中,当对方玩家延迟和丢包率很高的情况下,只能用很简单的计算方式来算对方的位置,有误差,并不一定准确(服务端)
  • 当网络抖动的情况下,另一个客户端看他其他玩家会出现多次的拉扯。(平滑需要把其他玩家的延迟加大,验证更难了)
  • 如果给当前客户端的网络其他玩家加上输入预测,在丢包率严重的情况下,拉扯会特别大。
  • 服务器验证失败的情况下,需要把客户端归位到服务器的状态。
    • 本地客户端,因为是先模拟的,如果网络延迟很大,本地客户端已经走到8帧,第0帧服务器报告错误,告诉客户端当前0帧错误,归位,客户端需要缓存1~8帧的输入,模拟到当前的状态。
    • 本地客户端的其他网络玩家,其他玩家的数据本身就是服务器转发过来的,所以不会出现模拟错误的情况。

posted @ 2022-12-26 15:51  BackSword  阅读(134)  评论()    收藏  举报