腾讯游戏学院 游戏程序设计第十章(个人总结)—— 网络同步技术

本文探讨游戏开发中的网络同步技术,包括帧同步与状态同步的优劣对比,以及在网络不佳情况下的应对策略。深入分析了游戏类型与同步技术之间的匹配,并提供了弱网络环境下优化网络传输的具体方法。

腾讯游戏学院 第十章 网络同步技术 学习打卡

同步
  • 一致性

  • 及时性

  • 鱼和熊掌的关系

输入模块
  • = 函数输入
核心逻辑模块
  • 函数
输出控制模块
  • 函数输出
输出模块
  • 画面
定点数
  • 以32位定点数为例
  • 内部的原始表示方式为32位整数
  • 基于定点数的四则运算
    • 用整数运算来实现定点数的运算
  • 基于定点数的开方及超越函数
    • 多项式拟合、迭代法、查表法等
  • 基于定点数的随机函数
如何得到一致性的逻辑及对应的状态
  • 保持客户端的版本一致
  • 不要依赖不确定性的外部逻辑(比如UI交互逻辑)
  • 限制外部逻辑(比如UI交互逻辑)对核心逻辑的调用
  • 谨慎使用多线程

简介

  • 同步状态数据
  • 易上手难维护
  • 核心处理模块结构
    • 单点计算
      • 直接把用户输入数据传到服务器,服务器做完之后,把状态同步到各个客户端,达到状态一致,非常简单也非常粗暴
    • 分布式计算
      • 由每一个客户端分别去负责某一部分核心逻辑的运算,然后再把我负责运算的一些状态传到客户端,其他客户端也把它们负责运算状态传给我
冲突问题
  • 仲裁权

    • 多方竞争仲裁权
  • 强一致性

    • 冲突避免
  • 弱一致性

区分核心/非核心一致性
  • 是否影响核心博弈结果
    • 核心一致性
      • 仲裁单点化异步交互
    • 非核心一致性
      • 仲裁分散化延迟同步
游戏类型 核心一致性 非核心一致性
赛车 冲线
道具(拾取/使用/命中)
位置
赛道碰撞
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值