快速业务通道

关于flash游戏的“录像”功能

作者 佚名技术 来源 服务器技术 浏览 发布时间 2012-07-13


不知道大家考虑过怎样用Flash做游戏录像的问题啊,我也是一时想起,就像星际争霸里面的录像功能那样,flash做的游戏能不能也实现录像功能呢??在玩过之后点击replay按钮即可把你刚才玩的重放一次,最好是能把录像另存一个文件,然后在另一台电脑上运行flash游戏后也能调入此录像。也许这对动作类型的游戏比较好,便于大家展示技巧和交流。大家有兴趣研究一下这个问题吗?
1 确定代码执行顺序。这一点是流程可再现的基础。
系统能只有一个enterframe,或者一个Interval。而且enterframe和 Interval不能同时用。
把所有mc的enterframe变成一个一般的函数,由主enterframe循环调用。 2 把玩家操作独立出来。
记录时,用一个Array(或者类似的东西)记录每帧的操作,并且压缩。
播放时,读取这个Array,替代玩家的输入。

我的做法是,把每帧的操作(上下左右AB) 按位编码到一个字节中。游戏结束后就把所有操作编码成一个可显示的字符串,在一个文本里面显示出来。
replay时,首先把字符串解析成Array。然后用于替代玩家的输入。

另外,若是fps很高,操作本身就会有冗余,可以进行压缩。

3 解决随机问题。
解决方法是,把所有随机数记录下来。
所有要用到随机数的地方,一律使用自定义的接口,譬如叫做 getRandomNum()

该接口在正常游戏时产生随机数,并且丢入专门列表记录下来;输出时,该列表和操作列表一起产生replay字符串;而在replay时则顺序读取原来的表。

为了编码方便,限制随机数的精度。譬如精度为 1/100,这样就可以把一个随机数压缩到一个可显示字符中了。

若有兴趣可以自己试试看。 关键词:

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号