今天就做一个游戏记录与回放的Demo,来强化一个上两篇文章的内容。
1、用Cube创建一个Player,之后创建一个Panel。
2、将EZReplayManager预制体拖到Scene中。如下图2-1所示
图 2-1 将EZReplayManager预制体拖到Scene中
3、将要记录的游戏对象添加到EZReplayManager的属性上面,如图3-1所示。一般系统会默认到Camera也作为要记录的对象,但是现在没有用到,所以也可以不添加。
图 3-1 添加要记录的游戏对象
4、Player移动
给Player挂上控制移动的脚本,如下代码片段所示:
public class PlayerController : MonoBehaviour {
private float intervalX;
private float intervalY;
private Vector3 intervalVector3;
private float speed = 10f;
void Update () {
PlayerMove();
}
//控制移动
void PlayerMove()
{
intervalX = Input.GetAxis("Vertical")*Time.deltaTime;
intervalY = Input.GetAxis("Horizontal")*Time.deltaTime;
intervalVector3 = new Vector3(0, 0, intervalX);
//移动
this.transform.Translate(intervalVector3);
//旋转
this.transform.Rotate(new Vector3(0,intervalY*20,0));
}
}
5、运行程序
首先点击“Start recording”,表示开始记录,如图5-1所示。
之后点击Replay即可进入回放界面
图 5-1 开始记录和回放
点击开始按钮,即可回放记录的视频,而界面的最左边“Replay speed”滑动条,可以调节回放的速度。
图 5-2 回放界面
备注:步骤3中也可以不将要记录的游戏对象拖入到EZReplayManager的属性上。可以通过代码来实现。
void Start () {
EZReplayManager.get.mark4Recording(gameObject,"Player");
}
将该代码的脚本挂到要记录的游戏对象上就行,但是在Resources中必须有该游戏对象的预制体,因为该机制是通过加载预制体进行记录的。
图 6-1 其他添加记录的方法
那现在我们自己制作的小Demo就可以成功运行啦!!!
我们可能觉得用插件自带的界面不舒服,那么下一节我们直接调用系统的方法自己搭建界面!
欢迎加本人QQ:1909546349,一起讨论!