成人AV在线无码|婷婷五月激情色,|伊人加勒比二三四区|国产一区激情都市|亚洲AV无码电影|日av韩av无码|天堂在线亚洲Av|无码一区二区影院|成人无码毛片AV|超碰在线看中文字幕

用程序?qū)崿F(xiàn)的天氣效果之鵝毛大雪

天氣效果是很多網(wǎng)頁設(shè)計師必學(xué)必做的一個技能,其中雪花效果在實際作品中非常常見。如果使用時間軸動畫來實現(xiàn)這個效果,會非常麻煩,因為隨機(jī)性無法控制,而且每次都是一樣的效果。但是,如果用編程來實現(xiàn),就會簡單

天氣效果是很多網(wǎng)頁設(shè)計師必學(xué)必做的一個技能,其中雪花效果在實際作品中非常常見。如果使用時間軸動畫來實現(xiàn)這個效果,會非常麻煩,因為隨機(jī)性無法控制,而且每次都是一樣的效果。但是,如果用編程來實現(xiàn),就會簡單得多。

首先,我們新建一個空白的文檔,設(shè)置幀頻為30fps。

導(dǎo)入背景圖和繪制雪花

接下來,導(dǎo)入一張背景圖,為了突出白色的雪花效果,選擇與白色對比明顯的顏色為佳。例如,我們可以選擇一張紅色喜慶的圖像。

然后,我們需要手動繪制一個雪花的影片剪輯,之后的代碼將根據(jù)這個影片剪輯復(fù)制生成多個不同大小形態(tài)的雪花在舞臺上。繪制的方法主要是利用徑向漸變,從白色到透明的白色,這樣就會產(chǎn)生邊緣模糊的效果。由于雪花在視覺上可能不是絕對的圓形,所以我們可以將它做成橢圓形。

編寫代碼實現(xiàn)雪花效果

在主時間軸上新建一個AS層,并添加以下代碼:

var total:int  100; // 雪花總數(shù)
var max:int  1; // 最大尺寸
var min:Number  0.18; // 最小尺寸
var snowList:Array  []; // 雪花數(shù)組
var w:Number  ;
var h:Number  ;
// 創(chuàng)建雪花
createSnow();
startMoveSnow();
// 建立雪花
function createSnow():void {
   for (var i:int  0; i < total; i  ) {
      var snow_mc:SnowItem  new SnowItem();
      snow_mc.x  Math.floor(Math.random() * w);
      snow_mc.y  Math.floor(Math.random() * h);
      snow_  snow_  Math.random() * (max - min)   min;
      snow_  Math.random() * 0.8   0.2;
      snow_mc["yspeed"]  Math.floor(Math.random() * 2   6);
      snow_mc["xspeed"]  -0.036   Math.random() * 0.06;
      snow_mc["radian"]  0;
      snow_  Math.random() * 360;
      (snow_mc);
      snowList.push(snow_mc);
   }
}
// 控制雪花降落
function startMoveSnow():void {
   (Event.ENTER_FRAME, moveSonw);
}
function moveSonw(e:Event):void {
   for (var i:int  0; i < total; i  ) {
      var mSnow:SnowItem  snowList[i] as SnowItem;
      mSnow["radian"]  mSnow["xspeed"] * 2;
      mSnow.x  (mSnow["radian"]) * 2;
      mSnow.y  mSnow["yspeed"];
      if (mSnow.y > h || mSnow.x > w || mSnow.x < 0) {
         mSnow.y  -10;
         mSnow.x  -10   Math.floor(Math.random() * (w   10));
           Math.random() * 360;
      }
    }
}

運行代碼,你就可以看到“鵝毛大雪”的效果啦!

標(biāo)簽: