http://bbs.9ria.com/thread-208546-1-1.html
粒子编辑器网址:http://onebyonedesign.com/flash/particleeditor/
说明:
Emiiter type 可选两种粒子运动方式:Gravity和Radial
Edit Texture 可以选择粒子的基本图形,除了系统提供的星形圆形外,还可以上传自己的图形。
Export Particle 导出粒子文件(我最喜欢这个功能了)
其余的滑竿就是控制数值变化操作了,这个我就不解释了,大家去随便拖几个看看,每改变数值都会使粒子运动产生变化,老实说,我也看不懂那些变化是啥意思,所以还不能做到随心所欲的控制粒子发生,这个还望大神们指点。
下面是本菜使用生成的粒子使用示例:
截个效果图先:
很漂亮啊!
在网站里按Export Particle 导出粒子文件后,你会拥有一个压缩包,解压,会看到两个文件,一个png,一个pex
首先我们要在项目根目录里建一个Assets文件夹(如果有了就不用建了),把那两个文件放在这里面。
代码:
starling启动类:(做过starling的都知道,没做过的话.....我也解释不了)
- package particle {
- import starling.core.Starling;
- import flash.display.Sprite;
- /**
- * @author portal
- */
- [SWF(backgroundColor="#000000", frameRate="60", width="640", height="480")]
- public class ParticleTest extends Sprite {
-
- private var mStarling:Starling;
-
- public function ParticleTest() {
- mStarling = new Starling(ParticleDemo, stage);
- mStarling.start();
- //addChild(new Stats());
- }
- }
- }
主类:(代码很少,例子很简单)
- package particle {
- import starling.core.Starling;
- import starling.events.Event;
- import starling.textures.Texture;
- import starling.extensions.PDParticleSystem;
- import starling.display.Sprite;
- /**
- * @author portal
- */
- public class ParticleDemo extends Sprite {
-
- [Embed(source="../assets/texture.png")]
- private static const myParticle : Class;
-
- [Embed(source="../assets/particle.pex",mimeType="application/octet-stream")]
- private static const myParticleXML : Class;
-
- private var pdSystem:PDParticleSystem;
-
- public function ParticleDemo() {
- var xml:XML = XML(new myParticleXML);
- var texture:Texture = Texture.fromBitmap(new myParticle());
- pdSystem = new PDParticleSystem(xml, texture);
- addEventListener(Event.ADDED_TO_STAGE, onAddedToStage);
- }
-
- private function onAddedToStage(event:Event):void
- {
- pdSystem.emitterX = 100; //调位置而已
- pdSystem.emitterY = 200;
- addChild(pdSystem); //记得要加入显示列表
- pdSystem.start(); //开始播放
- Starling.juggler.add(pdSystem); //粒子是动画对象,starling是用juggler对象管理动画的
- }
- }
- }