lufy's legend

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 9302|回复: 7
打印 上一主题 下一主题

如何在同一个页面里生成两个动画实例呀?

[复制链接]

1

主题

0

好友

27

积分

士兵

Rank: 1

跳转到指定楼层
楼主
发表于 2013-4-8 13:04:19 |只看该作者 |倒序浏览
想用lufylegend引擎做动画,当前项目需要在一个动画A里加载另一个动画B,动画B也是一个完整的动画,在没有动画A的情况下也可以运行(或者少量修改也可运行),该如何实现?我拿两个lufylegend游戏实例同时运行在同一页面出错了,两个动画互相干扰!!!
回复

使用道具 举报

37

主题

8

好友

9312

积分

诸侯王

Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15

沙发
发表于 2013-4-8 21:26:35 |只看该作者
是说两个canvas标签,还是说在同一个canvas上显示两个动画?
另外你说的动画A里播放动画B是指什么?能不能举个例子说明一下?
不回答与技术和引擎不相关的问题
回复

使用道具 举报

1

主题

0

好友

27

积分

士兵

Rank: 1

板凳
发表于 2013-4-9 18:39:16 |只看该作者
问题1:是两个canvas标签。
问题2:比如,我用lufylegend引擎做一个很cool的界面,有动画的,像iphone那个查看CD的效果(cover-flow效果),来介绍也是用lufylegend引擎做的游戏。查看时是用一些游戏的界面缩略图给用户查看,用户喜欢那个游戏,一点击缩略图,缩略图的位置换成这个游戏的真正界面,玩家就可以玩这个游戏了。这个时候浏览界面就是动画A,而游戏就是动画B,动画B是被动画A加载的,而动画B在没有动画A的情况下也是可用的(好像有点绕)。类似在flash里,一个flash动画加载另一个flash动画。
我查看了代码,感觉应该是全局变量的问题,这样lufylegend引擎在一个页面里只能服务于一个动画或游戏了,应用受到了限制。
现在我尝试在做些修改,把LGlobal里的部分内容搬到LStage里封装起来,这样创建一个动画时是:
var rootStage = new LStage();//改成一个实例的形式,同时同台的动画就不会互相干扰了, lufylegend引擎前途就更大了呀!
rootStage.init(50,"legend",800,450,main);
...
rootStage .addChild(/*游戏底层*/);
...
目前在解决两个问题:
1.如何让rootStage 的Child知道在哪里画画?
2.目前继承算法有问题:
function A(){}   
p={
    say:function(){alert("A");}
}
for(var k in p)A.prototype[k]=p[k];trace(p[k]);

function B(){
    base(this,A,[]);
}
p={
    say:function(){alert("B");}
}
for(var k in p)B.prototype[k]=p[k];trace(p[k]);

function C(){
    base(this,B,[]);
}
for(var k in C.prototype) trace(C.prototype[k]);

var c = new C();
c.say();//应该是B才对!
回复

使用道具 举报

无效楼层,该帖已经被删除

37

主题

8

好友

9312

积分

诸侯王

Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15

5#
发表于 2013-4-9 21:51:09 |只看该作者
wdstudio 发表于 2013-4-9 18:39
问题1:是两个canvas标签。
问题2:比如,我用lufylegend引擎做一个很cool的界面,有动画的,像iphone那个 ...

其实有个比较简单的方法的,不知道符不符合你的要求
就是使用iframe来实现
按照你说的点击缩略图,只需要改变iframe的路径就可以运行不同的游戏了
不回答与技术和引擎不相关的问题
回复

使用道具 举报

37

主题

8

好友

9312

积分

诸侯王

Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15

6#
发表于 2013-4-9 21:56:04 |只看该作者
引擎致力于所有平台,而移动页面上不太可能出现两个游戏的
所以引擎在设计的时候,就是在一个canvas的前提下设计的
而遇到pc平台上同一个页面上运行多个游戏或应用的话,我觉得目前最好的解决办法就是使用iframe
不回答与技术和引擎不相关的问题
回复

使用道具 举报

1

主题

0

好友

27

积分

士兵

Rank: 1

7#
发表于 2013-4-10 12:57:34 |只看该作者
谢谢lufy,我先修改看看,不行就用你的方法
回复

使用道具 举报

46

主题

3

好友

1866

积分

偏将军

Rank: 4

8#
发表于 2013-4-14 16:18:07 |只看该作者
其实我觉得没有必要用两个canvas,做成两个html文件,用iframe的方法就可以弄出来的。
这里有iframe用法:
http://www.w3school.com.cn/tags/tag_iframe.asp
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

防止垃圾广告,请填写任意字符

Archiver|lufy's legend

GMT+8, 2024-5-7 06:51 , Processed in 0.052492 second(s), 22 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部