zoukankan      html  css  js  c++  java
  • 分享一个超强大的starling粒子编辑器和简单的使用教程

    我对粒子这方面的知识一无所知,但是看到各种炫的效果后彻底被征服了,粒子这玩意对我这数学盲来说太难搞了,最近学starling得知有个扩展的粒子系统,偶然逛论坛发现一强大的粒子编辑器,不敢独吞,拿出来大家玩玩,超爽。

    粒子编辑器网址:http://onebyonedesign.com/flash/particleeditor/

    说明:
    Emiiter type 可选两种粒子运动方式:Gravity和Radial
    Edit Texture 可以选择粒子的基本图形,除了系统提供的星形圆形外,还可以上传自己的图形。
    Export Particle 导出粒子文件(我最喜欢这个功能了)

    其余的滑竿就是控制数值变化操作了,这个我就不解释了,大家去随便拖几个看看,每改变数值都会使粒子运动产生变化,老实说,我也看不懂那些变化是啥意思,所以还不能做到随心所欲的控制粒子发生,这个还望大神们指点。

    下面是本菜使用生成的粒子使用示例:

    截个效果图先:

    很漂亮啊!

    在网站里按Export Particle 导出粒子文件后,你会拥有一个压缩包,解压,会看到两个文件,一个png,一个pex
    首先我们要在项目根目录里建一个Assets文件夹(如果有了就不用建了),把那两个文件放在这里面。


    代码:

    starling启动类:(做过starling的都知道,没做过的话.....我也解释不了)

     1 package particle {
     2 import starling.core.Starling;
     3         import flash.display.Sprite;
     4 
     5         /**
     6          * @author portal
     7          */
     8          [SWF(backgroundColor="#000000", frameRate="60", width="640", height="480")]
     9         public class ParticleTest extends Sprite {
    10                 
    11                 private var mStarling:Starling;
    12                 
    13                 public function ParticleTest() {
    14                         mStarling = new Starling(ParticleDemo, stage);
    15                         mStarling.start();
    16 //addChild(new Stats());
    17                 }
    18         }
    19 }

    主类:(代码很少,例子很简单)

     1 package particle {
     2         import starling.core.Starling;
     3         import starling.events.Event;
     4         import starling.textures.Texture;
     5         import starling.extensions.PDParticleSystem;
     6         import starling.display.Sprite;
     7 
     8         /**
     9          * @author portal
    10          */
    11         public class ParticleDemo extends Sprite {
    12                 
    13                 [Embed(source="../assets/texture.png")]
    14                 private static const myParticle : Class;
    15                 
    16                 [Embed(source="../assets/particle.pex",mimeType="application/octet-stream")]
    17                 private static const myParticleXML : Class;
    18                 
    19                 private var pdSystem:PDParticleSystem;
    20                 
    21                 public function ParticleDemo() {
    22                         var xml:XML = XML(new myParticleXML);
    23                         var texture:Texture = Texture.fromBitmap(new myParticle());
    24                         pdSystem = new PDParticleSystem(xml, texture);
    25                         addEventListener(Event.ADDED_TO_STAGE, onAddedToStage);
    26                 }
    27                 
    28                 private function onAddedToStage(event:Event):void
    29         {
    30                         pdSystem.emitterX = 100;   //调位置而已
    31                         pdSystem.emitterY = 200;
    32                         addChild(pdSystem);    //记得要加入显示列表
    33                         pdSystem.start();        //开始播放
    34                         Starling.juggler.add(pdSystem);   //粒子是动画对象,starling是用juggler对象管理动画的
    35                 }
    36         }
    37 }

    原文链接:分享一个超强大的starling粒子编辑器和使用教程

  • 相关阅读:
    000_linux之Ubuntu安装
    001_linux基础命令
    018_linux驱动之_阻塞和非阻塞
    019_linux驱动之_定时器的引入
    017_linux驱动之_信号量
    016_linux驱动之_原子操作
    python logging模块整理
    python sys与shutil模块
    python configparser模块
    python os模块
  • 原文地址:https://www.cnblogs.com/atong/p/3110138.html
Copyright © 2011-2022 走看看