lufy's legend

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

关于动画加快的问题

[复制链接]

37

主题

8

好友

9312

积分

诸侯王

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

楼主
发表于 2019-11-27 10:04:17 |显示全部楼层
不好意思,最近一直没上论坛
你可以到这里下载引擎的最新版本试一下,应该可以解决你的问题
https://github.com/lufylegend/lufylegend.js/tree/develop
不回答与技术和引擎不相关的问题
回复

使用道具 举报

37

主题

8

好友

9312

积分

诸侯王

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

沙发
发表于 2019-12-2 13:16:28 |显示全部楼层
ningbnii 发表于 2019-12-1 09:18
lufy,您好!
我测试了新版本,问题已经解决,动画不在加快了。
有个新的问题,问题描述:我在ENTER_FRAME ...

这个应该是代码的问题了吧,你在切换页面的时候应该判断一下,在已经加入计时器的情况下就不应该再次加入计时器了
不回答与技术和引擎不相关的问题
回复

使用道具 举报

37

主题

8

好友

9312

积分

诸侯王

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

板凳
发表于 2019-12-3 08:29:16 |显示全部楼层
另外,如果你切换页面,计时器怎么会还在跑?之前的页面没有隐藏吗?
不回答与技术和引擎不相关的问题
回复

使用道具 举报

37

主题

8

好友

9312

积分

诸侯王

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

地板
发表于 2019-12-5 09:09:27 |显示全部楼层
ningbnii 发表于 2019-12-4 11:33
我做了一个新的demo,地址https://github.com/ningbnii/ionic_lufy_demo

点击动画,返回首页,然后再点击 ...

我看了代码,你相当于一个页面里用了多个canvas,
不能考虑一下只用一个canvas吗?
不回答与技术和引擎不相关的问题
回复

使用道具 举报

37

主题

8

好友

9312

积分

诸侯王

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

5#
发表于 2019-12-5 09:16:55 |显示全部楼层
ningbnii 发表于 2019-12-5 09:13
嗯,是这样的,每个页面里面都有一个canvas,我就是想测试一下是否可行,因为我感觉css定位比canvas要方 ...

因为这样会导致多次调用引擎的初始化函数LInit,所以才会导致上述的问题的,
如果可以考虑iframe的话,倒是可以解决这个问题
不回答与技术和引擎不相关的问题
回复

使用道具 举报

37

主题

8

好友

9312

积分

诸侯王

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

6#
发表于 2019-12-5 09:36:37 |显示全部楼层
ningbnii 发表于 2019-12-5 09:21
哦,是否有方法可以主动清除初始化的状态呢,让页面再次进入的时候重新初始化,因为这个ionic可以监听到 ...

其实虽然你使用了多个canvas,但是页面里也只是一个canvas有效而已,
所以,你可以只用一个canvas,然后通过改变这个canvas本身的css来解决问题不是吗?

或者,通过修改引擎的初始化函数
https://github.com/lufylegend/lu ... nction.js#L489-L511
这个是引擎的源码,你可以重写一个LInit来覆盖原来的代码,
思路是在_requestAF(loop, s);的地方加个赋值
var requestId = _requestAF(loop, s);
然后通过window.cancelAnimationFrame(requestId);来取消
理论上是可行的,我不确定是否会引起其他问题,如果有的话,可以告诉我,我再看看其他地方是否有需要改动的地方
不回答与技术和引擎不相关的问题
回复

使用道具 举报

37

主题

8

好友

9312

积分

诸侯王

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

7#
发表于 2019-12-6 08:05:21 |显示全部楼层
ningbnii 发表于 2019-12-5 16:53
我测试发现使用requestAnimationFrame会出现动画加速的问题,使用数值没有问题

动画加速具体在什么情况下发生?
不回答与技术和引擎不相关的问题
回复

使用道具 举报

37

主题

8

好友

9312

积分

诸侯王

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

8#
发表于 2019-12-6 23:51:00 |显示全部楼层
ningbnii 发表于 2019-12-6 10:05
当两个页面的LInit的speed值不一致的时候,比如A为500,B为50,打开A动画慢,打开B动画快,这时候再打开A ...

等我抽空自己试一下看看
不回答与技术和引擎不相关的问题
回复

使用道具 举报

37

主题

8

好友

9312

积分

诸侯王

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

9#
发表于 2019-12-8 10:24:06 |显示全部楼层
我在www/index.html中把LInit重写了一下,你试试看还会不会出现上述你说的问题

index.html

3.88 KB, 下载次数: 1905

不回答与技术和引擎不相关的问题
回复

使用道具 举报

37

主题

8

好友

9312

积分

诸侯王

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

10#
发表于 2019-12-8 19:27:43 |显示全部楼层
ningbnii 发表于 2019-12-8 18:31
确实没问题了,我复制了两个动画页面,一个用的requestAnimationFrame,一个用的100,每个页面的speed不 ...

这个是引擎最底层的对象列表,引擎会每帧循环该列表里的对象,所以初始化的时候需要重新清空一下
不回答与技术和引擎不相关的问题
回复

使用道具 举报

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

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

Archiver|lufy's legend

GMT+8, 2024-5-2 12:51 , Processed in 0.054600 second(s), 22 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部