前段时间移植一个页游到手游,原先页游的项目里面有1000+的Flash人物,宠物动画,特效。

这要是全部重新做一遍,还不累死人?所以就想干脆直接在Cocos2d(x)里面播放SWF文件。(包括场景,过场动画,人物、宠物actions)

思路如下: 解析swf再把swf里面的各种tag,sprite用opengl es来绘制。

以前在MP4时代,就做过Flash相关工作,但是那个年代还cpu还不支持opengl es,内存还是16M。

所以必须重新学一遍opengl es, NeHe, 红书,蓝书,图形学。。。swf_file_format_spec 。。。1个月吭掉几本大部头。

然后再用1个月的时间完善一下代码。并把代码集成到cocos2d(x)中。。。。

一个字 累!

集成到Cocos2d和Cocos2dx,支持es 1.0 2.0:

CCFlashNode * fn = CCFlashNode::create("dog.swf");

fn->setPosition(ccp(100,100));

fn->setScale(0.8f);

fn->setFlipx(true);

f n->setRepeat(true);

fn->runAction(true);

addChild(fn);

fn->setFrameEvent(-1,CC_SELECTOR(::fun));

fn->stopAction();

看过的书:(很多都没有看透)

效果截图:(Demo资源是洛克王国的)

截图看不出宠物都是在动的,大概每个宠物有60frame的静止动作。

这个截图是战斗过程,音速犬 攻击 蒲公英,一个是攻击动 一个是效果动画,一个是被攻击动画。最后还要播放buffer动画。每个动画都是矢量的,如果全部用cocos2dx现有方法工作繁琐程度不说,光是2个宠物的战斗图片就有几兆了。

同上;另外一个技能,可以看到蒲公英可以根据音速犬的技能精确的做出被打击反应。

下面是直接从网上下载的flash故事,可以直接播放。

所有源码出售 ,联系: chenee543216 AT gmail.com

use SWF / Flash in cocos2d-x; cocos2d(cocos2d-x) 直接播放flash / SWF文件的更多相关文章

  1. asp.net 网页中播放 flash 和flv

    需求:在网页中播放powerpoint保存的pps文件和mp4文件 经过查阅:发现网页上直接播放pps文件比较麻烦(office web apps server),所以通过工具,将pps文件转换为sw ...

  2. Flash Builder 找不到所需的 Adobe Flash Player

    经测试该方法可用! http://bbs.9ria.com/thread-108472-1-1.html 最近重装了系统,flash开发工具也由flex换成了flash builder.调试时就出现了 ...

  3. 转: object 和embed 标签播放flash

    一.介绍: 我们要在网页中正常显示flash内容,那么页面中必须要有指定flash路径的标 签.也就是OBJECT和 EMBED标签.OBJECT标签是用于windows平台的IE浏览器的,而EMBE ...

  4. [置顶] c++播放Flash文件

    最近由于需要在程序中使用Flash播放,所以学习了下如何播放Flash,这里使用atl库中的CAxWindow来处理我们要播放的Flash!由于Flash的很多接口我们都不知道,所以可以参考前一篇文章 ...

  5. WPF 播放Flash

    原文:WPF 播放Flash WPF中没有直接提供播放Flash的控件. 可以使用WebBrowser来打开,代码如下: <Window x:Class="Nankang.Itacat ...

  6. 如何在HTML中播放flash

    随着html的风靡,改变了之前前端的许多条条框框,而video的出现使flash仿佛都要退出历史的舞台了,但是h5也会出现以下局限性,比如说,在一些不支持h5的浏览器上,此处省略一万只草泥马..... ...

  7. 如何使用JW Player来播放Flash并隐藏控制按钮和自定义播放完成后执行的JS

    在一个客户项目中播放的flash需要进行定制如不显示控制按钮,flash播放完成后执行特定的js等,在用过了N多的JQery插件和播放器后最终JW Player插件可以满足我的以上要求 因为JW Pl ...

  8. ubuntu中chromium无法播放flash,安装flash

    ubuntu14.0.4中系统自带的chromium无法播放flash,后来查了下,得知chromium已经不支持adobe flash了,用户可使用pepper flash替代.安装pepper f ...

  9. ucgui汉字库存放到外部的flash(控件可用)及写外部FLASH小软件

    源:ucgui汉字库存放到外部的flash(控件可用)及写外部FLASH小软件 如何将ucgui的汉字库存放到外部的flash memory(ucgui)(汉字库)(外部flash) ucgui的字库

  10. 【STM32H7教程】第10章 STM32H7的FLASH,RAM和栈使用情况(map和htm文件)

    完整教程下载地址:http://forum.armfly.com/forum.php?mod=viewthread&tid=86980 第10章       STM32H7的FLASH,RAM ...

随机推荐

  1. Csharp Winfrom 多串口通信

    Csharp 多串口通信 顾名思义,多串口通信,普通的PC机一般只有一个串口,现在很多家用的PC都没有串口,那么问题来了,如何保证多串口呢? 有一种神器,MOXA CP-168U Series PCI ...

  2. asp.net mvc 发送邮箱验证码

    public ActionResult Index() { /*第一种,利用Google的smtp来发送邮件*/ SmtpClient client = ); Random Rdm = new Ran ...

  3. iOS9 升级设置

    今天升级了iOS9, Xcode7.1 ; 打开之前的工程发现网络请求出错了, 参照UM开发文档, 对info.plist进行了配置如下: 1. 以iOS9 SDK编译的工程会默认以SSL安全协议进行 ...

  4. Matlab中Rand()函数用法

    一.理论准备 matlab函数randn:产生均值为0,方差 σ^2 = 1,标准差σ = 1的正态分布的随机数或矩阵的函数. 用法:Y = randn(n),返回一个n*n的随机项的矩阵.如果n不是 ...

  5. 【技术贴】解决QQ空间发表文章手机不显示换行

    采用HTML模式,在需要换行的地方加入如下代码. <div><span style="font-family:微软雅黑;font-size:16px"> & ...

  6. 【网络流24题】 No.14 孤岛营救问题 (分层图最短路)

    [题意] 1944 年,特种兵麦克接到国防部的命令,要求立即赶赴太平洋上的一个孤岛, 营救被敌军俘虏的大兵瑞恩. 瑞恩被关押在一个迷宫里, 迷宫地形复杂, 但幸好麦克得到了迷宫的地形图. 迷宫的外形是 ...

  7. Highcharts实例

    <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"% ...

  8. 使用android.view.TouchDelegate扩大View的触摸点击区域

    Android4.0设计规定的有效可触摸的UI元素标准是48dp,转化为一个物理尺寸约为9毫米.7~10毫米,这是一个用户手指能准确并且舒适触摸的区域. 如下图所示,你的UI元素可能小于48dp,图标 ...

  9. 在Azure中使用Load Runner测试TCP最大并发连接数

    对于Azure中的每一台虚机,它所能支持的TCP最大并发连接数是50万(参考微软官网: http://azure.microsoft.com/en-us/documentation/articles/ ...

  10. JS 利用数组拼接html字符串

    var cc = []; cc.push('<td colspan=' + fields.length + ' style="padding:10px 5px;border:0;&qu ...