黄色网页视频 I 影音先锋日日狠狠久久 I 秋霞午夜毛片 I 秋霞一二三区 I 国产成人片无码视频 I 国产 精品 自在自线 I av免费观看网站 I 日本精品久久久久中文字幕5 I 91看视频 I 看全色黄大色黄女片18 I 精品不卡一区 I 亚洲最新精品 I 欧美 激情 在线 I 人妻少妇精品久久 I 国产99视频精品免费专区 I 欧美影院 I 欧美精品在欧美一区二区少妇 I av大片网站 I 国产精品黄色片 I 888久久 I 狠狠干最新 I 看看黄色一级片 I 黄色精品久久 I 三级av在线 I 69色综合 I 国产日韩欧美91 I 亚洲精品偷拍 I 激情小说亚洲图片 I 久久国产视频精品 I 国产综合精品一区二区三区 I 色婷婷国产 I 最新成人av在线 I 国产私拍精品 I 日韩成人影音 I 日日夜夜天天综合

flash as3.0粒子效果實例教程

系統 1985 0

1、新建Flash文檔,設置:寬、高為 400 × 400 ,保存。
2、用橢圓工具在舞臺上畫一個 20 × 20 大小的圓。 (你能選擇任意的顏色)
3、右鍵單擊圓形,把它轉換成影片剪輯,注冊點居中。
4、在ActionScript導出的復選框中打勾 ,做類鏈接,類名為" Particle " 。圖1:

5、把圓形從舞臺刪除,新建ActionScript 3.0文件。圖2:

6、我們編寫一個外部的Particle類。在編譯器中輸入代碼:
package?{
????????import?flash.display.MovieClip;
????????public?class?Particle?extends?MovieClip?{
????????????????//We?need?different?speeds?for?different?particles.
????????????????//These?variables?can?be?accessed?from?the?main?movie,?because?they?are?public.
????????????????public?var?speedX:Number;
????????????????public?var?speedY:Number;
????????????????public?var?partOfExplosion:Boolean?=?false;
????????????????function?Particle?():void?{
????????????????}
????????}
}7、保存在fla文件的同一目錄下,名為 " Particle " 。圖3:

8、切換到我們的fla主文檔。首先我們在舞臺上生成粒子實例。在第一幀輸入代碼:
//We?need?few?imports?for?the?color
import?fl.motion.Color;
import?flash.geom.ColorTransform;
/*We?want?20?particles?at?the?start
particlesArray?is?used?when?we?animate?each?particle?*/
var?numberOfParticles:Number?=?20;
var?particlesArray:Array?=?new?Array();
//Each?time?a?hit?occurs,?we?want?to?create?10?new?particles
var?numberOfExplosionParticles:uint?=?10;
//This?loop?creates?the?first?particles?and?gives?them?speed?and?coordinates
for?(var?i=0;?i?
9、測試你的影片,效果如圖。圖4:

?
?
10、隨機地選擇一個粒子產生爆炸效果。爆炸后,生成新的粒子。最后,刪除舞臺上爆炸的粒子。把下列代碼塊加入到動作面板: //Call?for?the?first?explosion
startExplosions?();
/*This?function?makes?a?random?particle?to?explode.
From?here,?the?chain?reaction?begins.*/
function?startExplosions?():void?{
????????//Select?a?random?particle?from?an?array
????????var?index?=?Math.round(Math.random()?*?(particlesArray.length-1));
????????var?firstParticle:Particle?=?particlesArray[index];
????????//Set?a?random?tint
????????var?ct:Color?=?new?Color();
????????ct.setTint?(0xFFFFFF?*?Math.random(),1);
????????//Create?10?new?particles?because?of?explosion
????????for?(var?i=0;?i?11、添加方法 enterFrameHandler,更新粒子坐標,使粒子動起來。輸入下列代碼:
//This?function?is?responsible?for?the?animation
function?enterFrameHandler?(e:Event):void?{
????????//Loop?through?every?particle
????????for?(var?i=0;?i?12、方法 " checkForHit" 是最難的部份,碰撞檢測。輸入代碼:
/*This?function?checks?whether?two?particles?have?collided*/
function?checkForHit?(particleOne:Particle,?particleTwo:Particle):void?{
????????/*Let’s?make?sure?we?only?check?those?particles,?where?one?is?moving?and?the?other
????????is?stationary.?We?don’t?want?two?moving?particles?to?explode.?*/
????????if?((particleOne.partOfExplosion?==?false?&&?particleTwo.partOfExplosion?==?true)?||
????????particleOne.partOfExplosion?==?true?&&?particleTwo.partOfExplosion?==?false?)?{
????????????????//Calculate?the?distance?using?Pythagorean?theorem
????????????????var?distanceX:Number?=?particleOne.x?-?particleTwo.x;
????????????????var?distanceY:Number?=?particleOne.y?-?particleTwo.y;
????????????????var?distance:Number?=?Math.sqrt(distanceX*distanceX?+?distanceY*distanceY);
????????????????/*?If?the?distance?is?smaller?than?particle’s?width,?we?have?a?hit.?
????????????????Note:?if?the?particles?were?of?different?size,?the?calculation?would?be:
????????????????distance?13、代碼全部完成,測試你的影片。也可以設置不同背景的舞臺,畫任意的圖形。
最后完整的代碼:
//We?need?few?imports?for?the?color
import?fl.motion.Color;
import?flash.geom.ColorTransform;
/*We?want?20?particles?at?the?start
particlesArray?is?used?when?we?animate?each?particle?*/
var?numberOfParticles:Number?=?20;
var?particlesArray:Array?=?new?Array();
//Each?time?a?hit?occurs,?we?want?to?create?10?new?particles
var?numberOfExplosionParticles:uint?=?10;
//This?loop?creates?the?first?particles?and?gives?them?speed?and?coordinates
for?(var?i=0;?i?
附件下載:

Particle.rar
??????

粒子.rar
本文轉自:http://www.5uflash.com/flashjiaocheng/Flash-as3-jiaocheng/5300.html

flash as3.0粒子效果實例教程


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論