Egret之粒子系统

简介:

使用Egret土特产Egret Feather粒子编辑器 。 导出流星粒子特效如下如下:

wKiom1nUWy7xc6bqAABXo72xVUU415.png-wh_50

导出2个文件 :

wKiom1nUYYvDDKFVAABJuQfQJ3w222.png-wh_50

一 , 准备工作 :加入粒子模块 , 粒子系统在第三方库里面。所以需要下载第三方库加入到项目里面

①:下载第三方库

wKiom1nUjqHhnQaYAADSkb525zg072.png-wh_50

②:加入到项目(这里我只是将库放在与项目平级的目录里面,而且我只是取出了)

wKioL1nUjoCjGQYWAABeEw-Ppe8513.png-wh_50

③:在egretProperties.json的配置

wKioL1nUj87T_PdbAAA6y-aSZ48546.png-wh_50

④:使用egret build -e命令

wKiom1nUkELwKU8EAAB-tCENEiE439.png-wh_50


关于粒子核心

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
module app {
  export class ParticleView extends eui.Component implements eui.UIComponent{
   private particleSys : particle.GravityParticleSystem;
   public constructor() {
    super ();
    this .skinName =  "resource/eui_skins/ParticleE.exml" ;
   }
   protected partAdded(partName : string , instance : any):void{
    super .partAdded(partName , instance);
   }
   protected childrenCreated():void{
    super .childrenCreated();
    this .startSyncLoadLizi();
   }
   private startSyncLoadLizi() : void{
    this .syncLoadLizi( "plizi_json" );
   }
   private syncLoadLizi( resName : string ) : void{
    var  self =  this ;
             RES.getResAsync(resName,
                 function (data: any,key: string): void {
                     if (key ==  "plizi_json" ) {
                         self.syncLoadLizi( "plizi_png" );
                     }
                     else  if (key ==  "plizi_png" ) {
                         this .initParticle();
                     }
                 },
                 this );
   }
   /**
    * 初始化例子系统
    */
   private initParticle() : void{
    var  texture = RES.getRes( "plizi_png" );
    var  config = RES.getRes( "plizi_json" );
    this .particleSys =  new  particle.GravityParticleSystem(texture, config);
    this .addChild(  this .particleSys );
    this .particleSys.start();
   }
   
  }
}

核心::::

   var texture = RES.getRes("plizi_png");
   var config = RES.getRes("plizi_json");
   this.particleSys = new particle.GravityParticleSystem(texture, config);
   this.addChild( this.particleSys );
   this.particleSys.start();


效果:

wKiom1nUkM-gTPwPAAD0PuHz9Y0560.png-wh_50



Good 。。



















本文转自Aonaufly51CTO博客,原文链接:http://blog.51cto.com/aonaufly/1970362 ,如需转载请自行联系原作者



相关文章
|
5月前
|
JavaScript 前端开发
Three.js 的骨骼动画 SkinnedMesh
【2月更文挑战第16天】
146 2
|
5月前
dragonBones使用Sprite换肤后mesh问题
dragonBones使用Sprite换肤后mesh问题
51 0
|
11月前
Egret 碰撞检测总结
Egret 碰撞检测总结
78 0
|
11月前
DragonBones骨骼动画事件系统详解
DragonBones骨骼动画事件系统详解
106 0
|
容器
Egret学习笔记 (Egret打飞机-5.实现子弹对象)
Egret学习笔记 (Egret打飞机-5.实现子弹对象)
108 0
|
Web App开发 容器
Egret学习笔记 (Egret打飞机-2.开始游戏)
Egret学习笔记 (Egret打飞机-2.开始游戏)
81 0
Egret学习笔记 (Egret打飞机-3.实现背景循环滚动)
Egret学习笔记 (Egret打飞机-3.实现背景循环滚动)
121 0
Egret学习笔记 (Egret打飞机-7.实现敌机工厂)
Egret学习笔记 (Egret打飞机-7.实现敌机工厂)
92 0
|
容器
Egret学习笔记 (Egret打飞机-9.子弹对敌机和主角的碰撞)
Egret学习笔记 (Egret打飞机-9.子弹对敌机和主角的碰撞)
100 0
Egret学习笔记 (Egret打飞机-1.大致思路)   
Egret学习笔记 (Egret打飞机-1.大致思路)   
82 0