最近想要模仿寫雪人兄弟得遊戲,其中開場想要用雪花效果。自己琢磨了半天,又去找了一些文章參考,最後實現效果如下:
這是最終得實現效果,一開始參照了phaser3官方的demo,找了一圈沒找到合適得。其中有乙個是game objects\group\sprite pool.js 下面的例子,仿照得做發現效果並不好。之後自己又再搜了一圈,最終找到了一篇老外得文章。
老外是用phaser2.6寫的,3.0的api和架構方式都有很多調整,所以只能參照思路,重新實現。大致實現思路如下:
1.用雪花,然後從y=0向下墜落,如果超過顯示的高度,設定y座標為-10,重新讓雪花墜落
2.設定雪花的展示和透明度(每次重新墜落會重新設定顯示大小和墜落的x座標)
上**:
雪花的類:
1下雪類:class flake
16reset()
1726
move()
2737
this.f.setposition(this.x,this
.y);
38if (this
.prevflake)
394344}
45destroy()53}
54 }
1使用方法:class snow
11makeflakes(scene)
19this.lastflake =flake;20}
21}22update()
27destroy()
30 }
1最終實現效果就和開頭展示的一樣啦!class loadscene extends phaser.scene
5preload()
7create()
13update()
17 }
目錄結構如下:
原始碼
實現雪花飛舞效果
英文原文 這篇文章的發布日期是2015年的聖誕節,貌似唯一能與之匹配的就是就是在styling android上來點喜慶的東西。為那些不過聖誕節,或者在六月份讀這篇文章的人而寫 原諒我又調皮了。那麼問題來了,怎麼才能詮釋聖誕的意義呢?最明顯的答案就是 一張戴了聖誕帽的 雖然我覺得這張 足以結束這篇文...
CAEmitterLayer實現雪花效果
如果大家突然需要乙個雪花效果,我相信大部分人的第一反應是使用定時器建立大量的imageview物件,然後給每個imageview物件新增動畫。這種做法一方面操作複雜,一方面效能方面堪憂.既然現在大家都了解了caemitterlayer引擎,因此下面使用caemitterlayer引擎實現這個效果,看...
c語言 easyx實現飄雪花效果
首先,需要設定雪花在乙個視窗中的總數目,這個關係到雪花的空間密度。假定有20個雪花。就需要兩個陣列,分別為x 20 y 20 來分別記錄x座標和y座標。通過自定義乙個函式來初始化雪花的位置。這裡需要用到隨機數的相關知識。其次,如果當雪花落下時,在雪花落的位置畫乙個雪花,模擬雪花殘留在地面上。當雪花的...