[Unity Mirror] Introduction to Networked Physics (网络物理简介)

81 篇文章 31 订阅

英文原文:

https://gafferongames.com/post/introduction_to_networked_physics/

简介

  嗨,我是Glenn Fiedler,欢迎来到《网络物理学》的第一篇文章。

  在这个系列的文章中,我们将以三种不同的方式对物理模拟进行联网:确定性的锁步、快照插值和状态同步。

  但在我们开始之前,让我们花一些时间探索我们将在本系列文章中联网的物理模拟:

the

  在这里,我在开源物理引擎 ODE 中设置了一个简单的立方体模拟。玩家通过在其质心处施加力来移动。物理模拟采用这种线性运动并计算立方体与地面碰撞时的摩擦力,从而引发滚动和翻滚运动。

  这就是为什么我选择了一个立方体而不是球体。我想要这种复杂的、不可预测的运动,因为一般来说,刚体会根据其形状以有趣的方式运动。

一个互动的世界

  当玩家与其他物理模拟物体互动时,网络物理学变得很有趣,特别是当这些物体推回并影响玩家的运动时。

  所以让我们在模拟中添加更多的立方体:

the

  当玩家与立方体互动时,它会变成红色。当那个立方体静止时,它会变回灰色(非交互)。

  虽然滚动并与其他立方体互动很酷,但我真正想要的是一种推动大量立方体的方法。我想出的是:

the

  正如你所看到的,相互作用并不只是直接的。被玩家推来推去的红色方块也会把它们接触的其他方块变成红色。这样一来,相互作用的范围就扩大到了所有受影响的物体。

一个复杂的案例

  我还希望在玩家和非玩家方块之间有一个非常复杂的耦合运动,这样他们就成为一个系统:一组由约束条件连接起来的刚性体。

  为了实现这一点,我想如果玩家可以滚来滚去,创造出一个立方体的球,就像我最喜欢的游戏之一Katamari Damacy那样,那就很酷。

the

  距离玩家一定距离内的立方体有一个向立方体中心施加的力。这些立方体在katamari球中仍然是物理模拟的,它们并不像原始游戏那样只是 "粘 "在玩家身上。

  这对于网络物理来说是一个非常困难的情况!

下一篇:Deterministic Lockstep(确定性锁步)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值