This graph suspiciously looks very similar to our input delay model. T的简体中文翻译

This graph suspiciously looks very

This graph suspiciously looks very similar to our input delay model. That’s because it’s basically the same except that we’re waiting for input data from a different frame! In this case, the current frame minus the rollback amount determines the frame that we acquire data from.You might notice this is parallel here: Input delay is done by adding to the frame before it is sent, rollbacks are done by subtracting from the current frame before getting the input. This way, not only can you mix the two as you see fit, as long as the input delay and amount of rollbacks sum to at least the necessary amount of input delay, the performance will be smooth and clean. Magic!I’m not going into the details of writing the rollbacks themselves into the game engine in this article, but assuming you have that part, that is literally the only change you need to make in order to make them work.But of course, if you have rollbacks, you have what is fundamentally a partially asynchronous networking model. This means you can do some extra magic tricks on top that you couldn’t do before!simple graph showing how rollbacks hide packet lossBecause of the way the model works, if you’re willing to rollback a few more frames than is set, you no longer need any sort of extraneous input buffer to keep everything running along smoothly. Instead you can just keep the game running like normal and then do a couple extra frames of rollback when the data is finally received.Obviously you want to put a reasonable limit on this so you don’t end up one second out without the correct input. RollCaster allows only one extra frame of rollback before forcing a block for input and forcing resynchronization. GGPO will run along for quite awhile as long as it can keep verifying that both systems are running at the same timing.And if you’re wondering, the rule from above regarding keeping synchronization with the other system’s performance must be upheld. If you detect that the other computer is running slowly and has dropped a frame, then you must also wait a frame to keep synchronization, even in a rollback setup. If you don’t do this the two computers will slowly drift out of timing and nobody wants that.That’s pretty much all I got!Once you have all that understood the remainder is simply setting up the network connection and figuring out how you’re going to do the rollbacks themselves, if you bother with them at all. And while this is all pretty optimized for 2 players, it doesn’t scale up to more cleanly without a real hassle, so be careful.
0/5000
源语言: -
目标语言: -
结果 (简体中文) 1: [复制]
复制成功!
该图看起来与我们的输入延迟模型非常相似。那是因为它基本上是相同的,只是我们正在等待来自不同帧的输入数据!在这种情况下,当前帧减去回滚量将确定我们从中获取数据的帧。<br><br>您可能会注意到这里是平行的:输入延迟是通过在发送之前在帧中添加来完成的,回滚是通过在获取输入之前从当前帧中减去来完成的。这样,您不仅可以按照自己的意愿将两者混合使用,只要输入延迟和回滚量之和至少等于必要的输入延迟量,性能就会变得平滑而干净。魔法!<br><br>在本文中,我不会讨论将回滚本身写入游戏引擎的详细信息,但是假设您拥有回滚部分,那么从字面上看,这是使它们正常工作所需的唯一更改。<br><br>但是,当然,如果您有回滚,那么从根本上讲就是部分异步的网络模型。这意味着您可以在以前无法做的事情上做一些额外的魔术!<br><br>显示回滚如何隐藏数据包丢失的简单图形<br><br>由于该模型的工作方式,如果您愿意回滚比设置的帧数更多的帧,则不再需要任何无关紧要的输入缓冲区来保持一切顺利进行。相反,您可以使游戏保持正常运行,然后在最终收到数据后再进行一些额外的回滚。<br><br>显然,您希望对此设置一个合理的限制,这样一来,如果没有正确的输入,您就不会浪费一秒钟的时间。在强制输入块和强制重新同步之前,RollCaster仅允许额外的一帧回滚。GGPO可以运行很长时间,只要它可以继续验证两个系统是否在同一时间运行即可。<br><br>而且,如果您想知道,那么必须遵循上述与其他系统的性能保持同步的规则。如果您检测到另一台计算机运行缓慢并且丢了一帧,则即使在回滚设置中,也必须等待一帧以保持同步。如果您不这样做,那么两台计算机将慢慢偏离时间,没人会想要。<br><br>那几乎就是我所拥有的!<br><br>一旦您了解了所有内容,剩下的就是简单地建立网络连接并弄清楚您自己如何进行回滚(如果您完全不关心它们的话)。尽管这两个游戏都针对2个玩家进行了优化,但如果没有真正的麻烦,它并不会更干净地扩展到其他玩家。
正在翻译中..
结果 (简体中文) 2:[复制]
复制成功!
此图可疑地看起来非常类似于我们的输入延迟模型。这是因为它基本上是相同的, 除了我们在等待来自不同帧的输入数据!在这种情况下,当前帧减去回滚量决定了我们从中获取数据的帧。<br><br>您可能会注意到这是并行的:输入延迟通过在发送之前添加到帧完成,回滚通过从当前帧中减去后获取输入完成。这样,您不仅可以混合两者,你认为合适的,只要输入延迟和回滚量总和至少必要的输入延迟量,性能将是顺利和干净的。魔法!<br><br>我不会在本文中详细讨论将回滚本身写入游戏引擎的细节,但假设您拥有该部分,这是您为使它们正常工作而需要做出的唯一更改。<br><br>当然,如果您有回滚,则从根本上说,您具有部分异步网络模型。这意味着你可以做一些额外的魔术,你不能做之前!<br><br>显示回滚如何隐藏数据包丢失的简单图形<br><br>由于模型的工作方式,如果您愿意回滚比设置的多几帧,则不再需要任何类型的无关输入缓冲区来保持一切平稳运行。相反,你可以保持游戏运行正常,然后做几个额外的回退帧时,数据终于收到。<br><br>显然,你想对此设置一个合理的限制,这样你最终不会结束一秒钟没有正确的输入。RollCaster 只允许一个额外的回滚帧,然后强制块进行输入并强制重新同步。只要GGPO能够继续验证两个系统是否在同一时间运行,它就会运行相当长一段时间。<br><br>如果您想知道,必须维护上面有关保持与其他系统性能同步的规则。如果检测到另一台计算机运行缓慢且已丢弃帧,则还必须等待帧以保持同步,即使在回滚设置中。如果你不这样做,两台计算机将慢慢偏离时机,没有人想要。<br><br>这几乎都是我全部的!<br><br>一旦你了解了剩下的部分,只需建立网络连接,并找出如何自己进行回滚,如果你打扰他们。虽然这一切都是对 2 个玩家的相当优化, 它不会扩展到更干净, 没有真正的麻烦, 所以要小心。
正在翻译中..
结果 (简体中文) 3:[复制]
复制成功!
这个图看起来很像我们的输入延迟模型。这是因为它基本上是一样的,只是我们在等待来自不同帧的输入数据!在这种情况下,当前帧减去回滚量决定了我们从中获取数据的帧。<br>您可能注意到这是并行的:输入延迟是通过在发送帧之前添加到帧来完成的,回滚是通过在获取输入之前从当前帧中减去来完成的。这样,不仅可以随心所欲地将两者混合,只要输入延迟和回滚量之和至少达到所需的输入延迟量,性能就会平稳而干净。魔法!<br>在本文中,我不会详细介绍将回滚本身写入游戏引擎的细节,但假设您拥有这一部分,这实际上是您需要进行的唯一更改,以使它们正常工作。<br>当然,如果您有回滚,那么您就有一个基本的部分异步网络模型。这意味着你可以在上面做一些你以前做不到的额外魔术!<br>显示回滚如何隐藏数据包丢失的简单图<br>由于模型的工作方式,如果您愿意回滚比设置的帧多一些的帧,则不再需要任何类型的无关输入缓冲区来保持一切顺利进行。相反,你可以保持游戏正常运行,然后在最终收到数据时再进行几帧回滚。<br>很明显,您希望对此设置一个合理的限制,这样就不会在没有正确输入的情况下出现一秒钟。RollCaster只允许在强制块输入和强制重新同步之前进行一个额外的回滚帧。GGPO将运行相当长的一段时间,只要它能够不断验证两个系统在同一时间运行。<br>如果你想知道,上面关于保持与另一个系统性能同步的规则必须坚持。如果您检测到另一台计算机运行缓慢并且丢弃了一个帧,那么您还必须等待一个帧来保持同步,即使在回滚设置中也是如此。如果你不这样做,这两台电脑将慢慢失去时间,没有人希望这样。<br>这就是我的全部!<br>一旦您了解了所有这些,剩下的就是简单地设置网络连接,并弄清楚如何自己执行回滚,如果您真的需要回滚的话。虽然这都是相当优化的2名球员,它不能扩大到更干净没有一个真正的麻烦,所以要小心。
正在翻译中..
 
其它语言
本翻译工具支持: 世界语, 丹麦语, 乌克兰语, 乌兹别克语, 乌尔都语, 亚美尼亚语, 伊博语, 俄语, 保加利亚语, 信德语, 修纳语, 僧伽罗语, 克林贡语, 克罗地亚语, 冰岛语, 加利西亚语, 加泰罗尼亚语, 匈牙利语, 南非祖鲁语, 南非科萨语, 卡纳达语, 卢旺达语, 卢森堡语, 印地语, 印尼巽他语, 印尼爪哇语, 印尼语, 古吉拉特语, 吉尔吉斯语, 哈萨克语, 土库曼语, 土耳其语, 塔吉克语, 塞尔维亚语, 塞索托语, 夏威夷语, 奥利亚语, 威尔士语, 孟加拉语, 宿务语, 尼泊尔语, 巴斯克语, 布尔语(南非荷兰语), 希伯来语, 希腊语, 库尔德语, 弗里西语, 德语, 意大利语, 意第绪语, 拉丁语, 拉脱维亚语, 挪威语, 捷克语, 斯洛伐克语, 斯洛文尼亚语, 斯瓦希里语, 旁遮普语, 日语, 普什图语, 格鲁吉亚语, 毛利语, 法语, 波兰语, 波斯尼亚语, 波斯语, 泰卢固语, 泰米尔语, 泰语, 海地克里奥尔语, 爱尔兰语, 爱沙尼亚语, 瑞典语, 白俄罗斯语, 科西嘉语, 立陶宛语, 简体中文, 索马里语, 繁体中文, 约鲁巴语, 维吾尔语, 缅甸语, 罗马尼亚语, 老挝语, 自动识别, 芬兰语, 苏格兰盖尔语, 苗语, 英语, 荷兰语, 菲律宾语, 萨摩亚语, 葡萄牙语, 蒙古语, 西班牙语, 豪萨语, 越南语, 阿塞拜疆语, 阿姆哈拉语, 阿尔巴尼亚语, 阿拉伯语, 鞑靼语, 韩语, 马其顿语, 马尔加什语, 马拉地语, 马拉雅拉姆语, 马来语, 马耳他语, 高棉语, 齐切瓦语, 等语言的翻译.

Copyright ©2024 I Love Translation. All reserved.

E-mail: