美文网首页
关于ECS的相关记录

关于ECS的相关记录

作者: 卅云川 | 来源:发表于2019-12-05 10:58 被阅读0次

    在参照ECS实现了DAS之后,对DAS的反思和ECS的认知是同步进行的。
    DAS是发源于卡牌类游戏开发,并经历多个项目的实际开发经验之后而逐渐积攒起来的一种模式,虽然与ECS有一些相似,但在处理一些常见问题时,终究还是存在缺陷。

    关于同步

    DAS的帧同步与状态同步

    DAS的帧同步或状态同步,与普通游戏开发模式别无二致,究其原因,还是因为数据分离的不彻底,导致数据与状态信息终究还是散落在了不同的地方。
    因而在实现同步时,还是需要解决数据的问题,如:数据输入、数据输出、数据拉扯、数据平滑等等。

    ECS的帧同步与状态同步

    ECS本身是数据逻辑分离的结构,所以在 同步 这个问题本身,ECS的同步便是纯数据的同步。

    状态同步

    状态同步核心是对于数据的同步,所以每次数据的下发,实现对现有数据的替换,即完成了简单的状态同步。

    帧同步

    帧同步下,客户端统一帧号运行,所以在确保同帧具有相同的输入,便可完成基本的帧同步。

    但是帧同步往往需要解决延迟、拉扯等问题,所以需要引入 预演 的机制,而当真正数据下发后,又会涉及到 回滚 操作。所以这时帧同步便需要进行多个模块:

    1. 帧号记录
    2. 逻辑预演
    3. 数据快照

    帧号记录需要记录每一帧的id,以作后续记录使用;逻辑预演则在当前数据情况下进行继续运算,实现相关的平滑处理;数据快照则记录当前数据的所有快照,以备 回滚 操作时使用。

    由于帧同步机制问题,所以利用 数据快照 进行数据恢复,便可以达到 回滚 的效果。

    相关文章

      网友评论

          本文标题:关于ECS的相关记录

          本文链接:https://www.haomeiwen.com/subject/azcdgctx.html