最後,來看看Starling裡一個很炫的功能:Particle。Particle屬於extension,所以要另外下載檔案:Starling-Extension-Particle-System。下載之後把檔案複製到Starling的source裡面就可以了。

Particle一樣需要工具,Mac的使用者可以用Particle Designer。$7.99美金,一樣可以拿來開發iOS的遊戲。另外ONEBYONE提供了一個線上的Particle Editor,可以線上測試效果,然後產生Starling需要的檔案。這個網頁開著似乎會讓我們發佈swf時看不到Starling的內容,如果有這種情形請關閉這個網頁試試看。

我們就使用Particle Editor來幫我們產生粒子效果。介面可以設定的項目很多,就請大家自己去玩。調出想要的效果後,在Demo效果的右邊有個SAVE Export Particle,點下去後會讓我們儲存一個particle.zip檔。

將這個檔案解壓縮,裡面有個particle.pex跟texture.png。particle.pex基本上也是個XML檔案,裡面記錄了Particle的設定;texture.png則是Particle用的基本圖像。然後就來看程式碼:

publicclassGame9extendsSprite
{
privatevar _container:Sprite;
[Embed(source ="/assets/particle.pex", mimeType="application/octet-stream")]
privatestaticconstParticleConfig:Class;//embed particle的設定檔
[Embed(source ="/assets/texture.png")]
privatestaticconstParticleBitmap:Class;//embed particle用的圖像

publicfunctionGame9()
{
super();
addEventListener(Event.ADDED_TO_STAGE, init);
}

privatefunction init(e:Event):void
{
removeEventListener(Event.ADDED_TO_STAGE, init);

_container =newSprite();
addChild(_container);
addChild(newStats());

var bitmap:Bitmap=newParticleBitmap();
var texture:Texture=Texture.fromBitmap(bitmap);//將embed的圖片轉成texture
var xml:XML = XML(newParticleConfig());//將設定檔轉為xml

var particleSystem:ParticleDesignerPS=newParticleDesignerPS(xml, texture);//新增一個ParticleDesignerPS,將xml與texture傳進去
particleSystem.emitterX =300;//設定emitter座標
particleSystem.emitterY =300;//設定emitter座標
particleSystem.start();//開始particleSystem
_container.addChild(particleSystem);//加到場景上
Starling.juggler.add(particleSystem);//ParticleDesignerPS一樣是IAnimatable,要加到Starling.juggler才會跑
}
}

將particle.pex與texture.png embed進來,圖片轉成texture,設定檔轉成xml。接著新增一個ParticleDesignerPS的實體,將xml與texture傳進去。Particle系統有個emitter,用emitterX與emitterY設定座標,加到場景上,並且執行start()。ParticleDesignerPS也是實現IAnimatable介面的類別,因此最後要將它加到Starling.juggler才會跑。Demo如下:

點我或圖看Demo

Starling的基礎到此就完結篇啦,之後有更多的心得再來分享。

一起來玩鳥 Starling Framework(9)Particle的更多相关文章

  1. 一起來玩鳥 Starling Framework 簡介

    開場 Starling Framework是一套Flash 2D遊戲開發"工具",是使用Flash最新的Stage3D API建構出來的一套Framework.最大優點在於使用GP ...

  2. 一起來玩鳥 Starling Framework(5)Multi-Touch

    這篇來談談Starling的Multi-Touch.前一篇也提到,Multi-Touch一樣是監聽TouchEvent.TOUCH,然後由TouchEvent的e.getTouches()取回多點的資 ...

  3. 一起來玩鳥 Starling Framework(2)效能測試以及Image與Texture

    上一篇我們放了一個Quad與TextField在舞台上慢慢轉.眼尖的可能會發現轉起來邊緣有點鋸齒,這可以透過設定Starling的反鋸齒來解決,在Main.as裡,新增了_starling之後,可以加 ...

  4. 一起來玩鳥 Starling Framework(1)一定要的Hello World!

    雖然已經一堆Hello World的介紹文章跟影片了,但中文資料畢竟是比較少,所以不能免俗的來一篇中文版Hello World.首先開啟一個AS3.0專案,fps不用客氣,設為60,Starling很 ...

  5. 一起來玩鳥 Starling Framework(7)MovieClip

    承上一篇,我們接著來講最後一個IAnimatable類別,MovieClip.Starling的MovieClip跟native的MovieClip不太一樣,它只能接收一個Vector.<Tex ...

  6. 一起來玩鳥 Starling Framework(6)Juggler、Tween、以及DelayCall

    這篇開始來講Starling裡的Animation.Juggle是個簡單的Class,用來控制動畫的進行.他負責管理經由add()加進來的實現IAnimatable介面的物件,然後當Juggler的a ...

  7. 一起來玩鳥 Starling Framework(4)TouchEvent,Touch,以及TouchPhase

    這一篇來介紹一下TouchEvent.我們先來談單點的touch,下一篇再介紹MultiTouch.翻過Starling文件的應該會發現,Starling裡面沒有MouseEvent,而是整合在Tou ...

  8. 一起來玩鳥 Starling Framework(3)Button!

    週末夜來介紹個簡單的DisplayObject就好.不論是在電腦上或行動裝置上,跟使用者互動次數最多的,大概就是按鈕了.因此,Starling有個Button類別,來做出這個常用的互動元件. 同樣是因 ...

  9. 一起來玩鳥 Starling Framework(8)BitmapFont

    所謂BitmapFont,就是事先將我們會用到的字型,會用到的字,輸出成一張圖片,類似Sprite sheet,以及一個xml格式的Data file,然後我們一次將這文字圖片轉成Texture,up ...

随机推荐

  1. passwd讲解

    root:$dffjioowwf/:16274:0:999999:7::: 1用户名:密码:最近修改密码的日期:密码不能更改的天数:密码过期时间:密码需要更改期限到拉前7发出警告:宽限天数:帐号过期时 ...

  2. HDU1907(尼姆博弈)

    John Time Limit: 5000/1000 MS (Java/Others)    Memory Limit: 65535/32768 K (Java/Others)Total Submis ...

  3. vi错误terminal too wide解决方法

    vi错误terminal too wide解决方法 http://blog.sina.com.cn/s/blog_3f68daa00100vcsh.html

  4. TCP的可靠性

    原因: 1.确认和重传机制 2.序列号 3.流量控制(窗口) 4.拥塞控制(慢启动,拥塞避免,快速重传,快速恢复) http://blog.csdn.net/baidu_35692628/articl ...

  5. jquery 的combobox 处理级联

    随笔---jquery 的combobox 处理级联 ------------------------html------------- <select id="groupId&quo ...

  6. poj 3254(状态压缩+动态规划)

    http://poj.org/problem?id=3254 题意:有一个n*m的农场(01矩阵),其中1表示种了草可以放牛,0表示没种草不能放牛,并且如果某个地方放了牛,它的上下左右四个方向都不能放 ...

  7. eclipse出现build path 错误

    右击本项目-build path-config build path-libraries-发现有选项是带错误符号,于是点击edit然后点击alternative jre选择安装了的jre就解决问题了

  8. AC日记——codeforces Ancient Berland Circus 1c

    1C - Ancient Berland Circus 思路: 求出三角形外接圆: 然后找出三角形三条边在小数意义下的最大公约数; 然后n=pi*2/fgcd; 求出面积即可: 代码: #includ ...

  9. 山东省第八届省赛 A:Return of the Nim(尼姆+威佐夫)

    Problem Description Sherlock and Watson are playing the following modified version of Nim game: Ther ...

  10. 洛谷——P1722 矩阵 II

    P1722 矩阵 II 题目背景 usqwedf 改编系列题. 题目描述 如果你在百忙之中抽空看题,请自动跳到第六行. 众所周知,在中国古代算筹中,红为正,黑为负…… 给定一个1*(2n)的矩阵(us ...