bloggerAds

2020年11月3日 星期二

Ticker

在Tween完成後接個callback可以說是在常見不過的事

來看看一個簡單的狀況劇~






執行~~And~~

一秒後~~真的進來了呢~~

一切如預期一班~如此枯燥乏味~





於是乎~

我們在執行一次~~

只是這次我們把視窗縮小~~

一秒鐘~

兩秒鐘~

三秒鐘~

....

一分鐘~

兩分鐘~

诶~!!!!!

怎麼callback失效了....


驚嚇過度的我們立刻把所小的視窗打開

嘣嘣嘣嘣~

callback一次全部執行~

一切亂了套...

就像人生一般...


------------

原來~

為了節省效能

背景模式下是不會執行渲染的

有興趣的可以打開egret.web.js









簡單介紹一下,

egret會依據不同的瀏覽器使用刷新AnimationFrame

他會適時的刷新ticker

But!!!

為了省效能!

這個AnimationFrame在背景模式下(像是縮小視窗)

是不會執行的呦!!!!


那!!!如果我想要背景模式~

還是一直刷新~一直刷新~一直刷新怎麼辦呢?

有兩件是要做!!!

第一件~~不要停止ticker

打開main可以看到








把他註解掉~~



第二件~~讓egret繼續呼吸~~








在試一次~~~~

在背景模式下!!!

他!!!

執行惹!!!!


大家請依需求自己做修正~

感謝觀看!


補個坑點------------

即使使用了該方法

在背景模式下也只會一秒刷新一次...

如果我本來希望每0.1秒生成一個物件

在五秒由背景切回來時~~

會有幾個物件呢?

50個 ??

不對~

是5個優~

經不驚喜~~意不意外?

---------------------






沒有留言:

張貼留言