游戏的录制与回放

首先,要搞清楚一种设计模式:命令模式

我对命令模式的理解:将所有的操作都封装为对象

游戏的录制:游戏录制其实很简单,就是重新开一把游戏,然后把所有的命令重新执行一遍。

那游戏回放呢,是不是也很简单喽?将回放部分的命令重新执行一遍,对么?嗯。。。这样想是没有错,可是得知道执行前游戏所有的状态吧,游戏录制之所以简单,是因为游戏开始时的状态很容易获取到。但是游戏回放是从游戏中开始执行命令的,因此我们需要获取到回放开始帧的游戏状态。我的想法是:利用现有的游戏状态,通过命令的撤回来获取到该命令执行前的状态,通过这种方式一步步获取到回放开始帧的游戏状态。但是我们的回放开始帧很有可能在命令执行过程中,所以我们需要实现命令从中间某一帧开始执行,例如,当前游戏运行到800帧,我想回放500帧,那么回放开始帧就是300,可如果300帧这个时候有命令正在执行呢?假如这个命令开始帧是260,那么就让该命令从该命令还是后第40帧开始播放。

展示下效果:


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值