热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Games104现代游戏引擎入门lecture18游戏引擎的网络游戏架构基础

Games104现代游戏引擎入门-lecture18游戏引擎的网络游戏架构基础1challenge1一致2可靠性3安全性4多样性5多样性2基础1NetworkProtocols1O




Games104现代游戏引擎入门-lecture18游戏引擎的网络游戏架构基础


  • 1 challenge
    • 1 一致
    • 2 可靠性
    • 3 安全性
    • 4 多样性
    • 5 多样性

  • 2 基础
    • 1 Network Protocols
      • 1 OSI Model
      • 2 Socket
      • 3 TCP
      • 4 UDP
      • 5 game network protocols
      • 6 Reliable UDP
        • ARQ
        • FEC
        • Reed-Solomon codes


    • 2 Clock Synchroniation
      • 1 RTT
      • 2 NTP
      • 3 ntp+简单策略

    • 3 Remote Procedure call(RPC)
    • 3 P2P
    • 4 Network Topology
    • 5 Game Synchronization
      • 1 同步的方法
        • 1 帧同步
        • 2 锁同步

      • 2 确定性:
        • 1 浮点数
        • 2 随机数

      • 3
      • 3 状态同步
      • 4 总结


  • 3 视频



1 challenge

1 一致

在这里插入图片描述


2 可靠性

在这里插入图片描述


3 安全性

在这里插入图片描述


4 多样性

在这里插入图片描述


5 多样性

在这里插入图片描述


2 基础

在这里插入图片描述


1 Network Protocols

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述


1 OSI Model

在这里插入图片描述


2 Socket

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


3 TCP

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


4 UDP

在这里插入图片描述
在这里插入图片描述


5 game network protocols

大部分是组合协议。
在这里插入图片描述


6 Reliable UDP

网络游戏:基于UDP的可靠网络连接。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


ARQ

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
丢包少的时候5%,没有必要再传

在这里插入图片描述


FEC

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


Reed-Solomon codes

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

定制自己的UDP。基于APQ和FEC.很多传输协议也需要自己写。
在这里插入图片描述


2 Clock Synchroniation


1 RTT

在这里插入图片描述


2 NTP

对时间,
在这里插入图片描述
在这里插入图片描述
NTP算法:
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述


3 ntp+简单策略

在这里插入图片描述
在这里插入图片描述


3 Remote Procedure call(RPC)

程序员只需要重点关注逻辑,不需要关注那么多的网络方面的。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述


3 P2P

在这里插入图片描述
在这里插入图片描述在这里插入图片描述


4 Network Topology


5 Game Synchronization

在这里插入图片描述


1 同步的方法

帧同步,锁同步,状态同步
在这里插入图片描述


1 帧同步

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
坏处:
客户端算力浪费了
带宽要求高

在这里插入图片描述


2 锁同步

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

最慢的那个人会拖慢所有人的进程
在这里插入图片描述
bucket 同步是非常好的,网络不好了服务器不管你了。
在这里插入图片描述
在这里插入图片描述


2 确定性:

在这里插入图片描述


1 浮点数

所有的数学运算都要符合原理。
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
定点数据:

在这里插入图片描述


2 随机数

要求严格同步,
在这里插入图片描述
同步随机数的种子,伪随机,
在这里插入图片描述

在这里插入图片描述


3

在这里插入图片描述

使用buffer来解决延时的问题,
在这里插入图片描述

渲染帧和逻辑帧:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
Quick Catch UP
在这里插入图片描述
在这里插入图片描述

关照模式:
在这里插入图片描述
回放模式:
在这里插入图片描述
LockStep:

在这里插入图片描述
在这里插入图片描述
所有的状态客户端都有:
在这里插入图片描述

帧同步

在这里插入图片描述
在这里插入图片描述


3 状态同步

在这里插入图片描述
提交玩家部分的信息,server端会模拟整个。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
存在的问题入下:
在这里插入图片描述

在这里插入图片描述
server
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
对网速不好的不利,别人会比你快一步做出反应。
在这里插入图片描述
丢包的问题:
在这里插入图片描述


4 总结

在这里插入图片描述


3 视频

https://www.bilibili.com/video/BV1HN4y157Zq/?spm_id_from=333.788&vd_source=5c9c50b5a07b211beafdf65d7cc7f8c8







推荐阅读
  • REST与RPC:选择哪种API架构风格?
    在探讨REST与RPC这两种API架构风格的选择时,本文首先介绍了RPC(远程过程调用)的概念。RPC允许客户端通过网络调用远程服务器上的函数或方法,从而实现分布式系统的功能调用。相比之下,REST(Representational State Transfer)则基于资源的交互模型,通过HTTP协议进行数据传输和操作。本文将详细分析两种架构风格的特点、适用场景及其优缺点,帮助开发者根据具体需求做出合适的选择。 ... [详细]
  • 2019年后蚂蚁集团与拼多多面试经验详述与深度剖析
    2019年后蚂蚁集团与拼多多面试经验详述与深度剖析 ... [详细]
  • 应用链时代,详解 Avalanche 与 Cosmos 的差异 ... [详细]
  • 网站访问全流程解析
    本文详细介绍了从用户在浏览器中输入一个域名(如www.yy.com)到页面完全展示的整个过程,包括DNS解析、TCP连接、请求响应等多个步骤。 ... [详细]
  • 在多线程并发环境中,普通变量的操作往往是线程不安全的。本文通过一个简单的例子,展示了如何使用 AtomicInteger 类及其核心的 CAS 无锁算法来保证线程安全。 ... [详细]
  • 秒建一个后台管理系统?用这5个开源免费的Java项目就够了
    秒建一个后台管理系统?用这5个开源免费的Java项目就够了 ... [详细]
  • 本文通过思维导图的形式,深入解析了大型网站技术架构的核心原理与实际案例。首先,探讨了大型网站架构的演化过程,从单体应用到分布式系统的转变,以及各阶段的关键技术和挑战。接着,详细分析了常见的大型网站架构模式,包括负载均衡、缓存机制、数据库设计等,并结合具体案例进行说明。这些内容不仅有助于理解大型网站的技术实现,还能为实际项目提供宝贵的参考。 ... [详细]
  • 在JavaWeb项目架构中,NFS(网络文件系统)的实现与优化是关键环节。NFS允许不同主机系统通过局域网共享文件和目录,提高资源利用率和数据访问效率。本文详细探讨了NFS在JavaWeb项目中的应用,包括配置、性能优化及常见问题的解决方案,旨在为开发者提供实用的技术参考。 ... [详细]
  • 深入解析Spring Boot启动过程中Netty异步架构的工作原理与应用
    深入解析Spring Boot启动过程中Netty异步架构的工作原理与应用 ... [详细]
  • 深入解析OSI七层架构与TCP/IP协议体系
    本文详细探讨了OSI七层模型(Open System Interconnection,开放系统互连)及其与TCP/IP协议体系的关系。OSI模型将网络通信过程划分为七个层次,每个层次负责不同的功能,从物理层到应用层逐步实现数据传输和处理。通过对比分析,本文揭示了OSI模型与TCP/IP协议在结构和功能上的异同,为理解现代网络通信提供了全面的视角。 ... [详细]
  • 内网渗透技术详解:PTH、PTT与PTK在域控环境中的应用及猫盘内网穿透配置
    本文深入探讨了内网渗透技术,特别是PTH、PTT与PTK在域控环境中的应用,并详细介绍了猫盘内网穿透的配置方法。通过这些技术,安全研究人员可以更有效地进行内网渗透测试,解决常见的渗透测试难题。此外,文章还提供了实用的配置示例和操作步骤,帮助读者更好地理解和应用这些技术。 ... [详细]
  • Juval Löwy主张,每个类都应被视为服务,这并非是为了让服务无处不在,而是因为微服务是经过深思熟虑后系统分解的自然结果。在他的设计和构建的系统中,这种理念有助于提高模块化、可维护性和扩展性。通过将每个类视为独立的服务,系统能够更好地应对复杂性,实现更灵活的部署和更高的性能。 ... [详细]
  • TCP三次握手过程详解与图示解析
    本文详细解析了TCP三次握手的过程,并通过图示清晰展示了各个状态的变化。同时,文章还介绍了四次挥手的图解,解释了在TIME_WAIT状态中,客户端最后一次发送的ACK包的作用和重要性。 ... [详细]
  • 深入理解Linux网络编程:UDP协议实战解析
    深入理解Linux网络编程:UDP协议实战解析 ... [详细]
  • Windows环境下详细教程:如何搭建Git服务
    Windows环境下详细教程:如何搭建Git服务 ... [详细]
author-avatar
皇族灬柒诺彡_241
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有