2007/05/25

載入外部SWF檔--利用影格ActionScript法

目標
學習以外部SWF檔的方式來完成Flash作品。

觀念
  • 儘可能將Flash作品切割成個別的小檔案,並將小檔案匯出為SWF檔。
  • 再以載入外部SWF檔方式來完成作品,如此,方便分工、編輯及更新。
  • 影片可依需要才載入所需的swf檔,故能減低作品在網路上的下載負荷。
練習
[製作空白影片片段]
  1. 在你的隨身碟新增一檔案夾,並取一英文檔案夾名稱。
  2. 將你之前做過的swf檔,複製到上一步驟內之檔案夾內,檔名一定更新為英文,本例中,英文名為「windmill.swf」。
  3. 啟動Flash,新增一檔案。
  4. 視窗>元件庫,新增一「影片片段」,勿放入任何素材,換言之,它是一空白的影片片段。
  5. 離開影片片段的編輯,進入影片的場景。
  6. 從元件庫將步驟4及5所完成的影片片段元件移到舞台左上角,它會停在內定圖層的第一格。選取它,於屬性視窗內之「實體名稱」欄鍵入英文名,本例取名「LoadSWF」。
[加入行為(behavior)]
  1. 新增一圖層,取名為ActionScript。
  2. 點選該圖層之第一影格。
  3. 視窗 >行為指令(behavior)。
  4. 點按行為視窗之+圖示,依序進入點選影片片段﹣﹣載入外部影片片段。


  5. 於對話框入,輸入及圈選如下圖,按確定鈕。

[觀看ActionScript]
  1. 按Ctrl +Enter鍵,觀看動畫,它會是你複製到檔案夾內的swf動畫。
  2. 點按ActionScript圖層上的第一個影格,按F9,它的語法應像以下:
    //load Movie Behavior
    if(this.LoadSWF == Number(this.LoadSWF)){
    loadMovieNum("windmill.swf",this.LoadSWF);
    } else {
    this.LoadSWF.loadMovie("windmill.swf");
    }
    //End Behavior
  3. 儲存檔案。
[補充]
另一種載入外部影片片段的方法是使用loadMovieNum(),則上一節影格的ActionScript可更改如下:
//Using Load
LoadSWF.onEnterFrame=function(){
loadMovieNum("windmill.swf", 0);
}

作業
  • 以本單元之要領及之前的按鈕互動要領,設計出一件作品,它有兩個按鈕,可以互動式各自載入不同的外部影片片段。

2007/05/12

期末作業說明

目標
將期中作業衍生為具互動性的Flash動畫

繳期
6月21日

要求
  • 須有場景使用。
  • 須具音效、互動選項。
  • 須用load movieclip方法。
  • 須設Preload。
  • 須做片頭及片尾。
  • 須檔案最小化。
  • 須繳原始flash檔及swf檔。
  • 須掛到自己的網頁上http://web2.ntit.edu.tw/~sxxxxxxxxx/flash/內
參考網站

2007/05/10

Actionscript

目標
學會Actionscript的影格控制及按鈕控制

實例
〔控制影格的actionscript〕
  1. 開啟檔案。按Ctrl + Enter鍵,以測試影片。
    該影片是一個球的壓扁動畫。
  2. 在最上層之上新增一圖層。
  3. 在第影格10處插入一空白關鍵影格。
  4. 視窗 > 動作。
  5. 在動作影格視窗內,按其左上角之+圖示,並如下圖順序按到Stop。

  6. 按Ctrl + Enter鍵,以測試影片。
    影片會在球第一次壓扁處(影格10)停止。
〔用按鈕控制的actionscript〕
  1. 以前一檔案為基礎,先製作各球及影子的圖形元件。
  2. 以圖形元件製作出球墜地的影片片段元件。
  3. 製作一按鈕元件。
  4. 更新圖層,由下往上是基準線、動畫影片、按鈕、Actionscript。
  5. 將各圖層的影格刪除。
  6. 將影片片段元件拖拉放到「動畫影片」圖層。
  7. 將按鈕元件拖拉放到「按鈕」圖層。
  8. 在基準線畫一水平線。
  9. 調整上述三個元件的位置。
  10. 滑鼠點選「Actionscript」的第一個影格。
  11. 同上一例中的步驟4.及5.,製作「stop」Actionscript。
  12. 點按「動畫影片」圖層,選取動畫分身(註:任何元件用到舞台或作業區上即為分身)。
  13. 在屬性視窗內取分身名為「MC_bigball」(註:你可另取名稱,但不能與Actionscript的專用名詞相同。)。
  14. 點按「按鈕」圖層,選取按鈕分身。
  15. 視窗 > 動作。
  16. 點按動作﹣影格視窗左上的「+」。依下圖,選用on。


  17. 選Release。
  18. 在兩個大括弧間鍵入"MC_BigBall.stop();",整個actionscript如下


2007/04/25

音效--在關鍵影格播放及停播

目標
學會在關鍵影格播放及停播音效

Flash與音效有關的最普通工作是在與動畫同步的關鍵影格播放及停播音效。
在關鍵影格播放及停播音效的步驟如下:
  1. 增加一個音效到影片。
    要將該音效與場景內的一個事件同步,選擇一個起始關鍵影格,它對應著該場景內的事件之關鍵影格。你能選擇任何的同步option。參閱Adding sounds to a movie。
  2. 在音效layer的Timeline上產生一個關鍵影格,該影格是音效停止之處。
    時間上會出現音效檔的圖示。
  3. 選擇Window > Panels > Sound。
  4. 從Sound的彈現式清單內選擇同一音效。
  5. 從Synchronization彈現式清單內選擇Stop。
  6. 播放該影片時,當它播到停播音效影格時,音效會停止。
    要播放該音效,只要移動該播片頭即可。

音效﹣﹣﹣共享元件庫

目標
學會使用共享元件庫或Sound物件的音效。

你能夠指定一連結特性給一音效而從元件庫連結一個音效到不同的Flash影片。
你能夠在ActionScript使用Sound物件將音效加到影片並控制影片內的音效。控制音效包括音效正在播放時調整音量或左右音軌的平衡。參閱ActionScript Help在交談章節中的"Creating sound controls"。
要使用共享library內的音效或一個Sound action,需在Symbol Linkage對話框內給該音效指派一個辯識字串。
指派辯識字串給一個音效的步驟:
  1. 在Library視窗內選取音效。
  2. 繼續以下的方法之一:
    • 從Library Options清單內選擇Linkage。
    • 按右鍵(Windows) 或按住Control鍵並點按 (Macintosh) Library視窗內的音效檔,並從context清單選擇Linkage。
  3. 在Symbol Linkage Properties對話框之Linkage下方,選取Export This Symbol。
  4. 在文字框內鍵入辯識字串,然然點按OK。

音效加到按鈕

目標

學會將音效加到按鈕

你能夠將音效與按鈕元件的不同狀態搭上關係。因為音效是與元件存放在一起,所以這些音效會為該按鈕元件在舞台上的分身效勞。

加音效到按鈕的步驟:

  1. 在library內選取按鈕。
  2. 從Library Options選擇Edit。
  3. 在按鈕的Timeline新增一個layer供音效用。
  4. 在音效用的layer內產生一個正常的或空白的關鍵影格以對應到你要加入音效的按鈕狀態。
    例如,當按鈕被點按時要播放音效,則在音效layer上標示Down的影格插入個關鍵影格。
  5. 點按上一步驟所造出的關鍵影格。
  6. 選擇Window > Panels > Sound。
  7. 在Sound浮動功能盤內,從彈現式清單內選一個音效檔。
  8. 從Synchronization彈現式清單內選擇Event。
要為按鈕的每一個關鍵影格搭上不同的音效,對每一個關鍵影格製作一個空白關鍵影格並加入另一音效。你也能夠使用相同的音效而為按鈕的關鍵影格使用不同的特效。

音效之匯入

目標
學會匯入音效及將音效加入影片的方法

[匯入音效]

你可以將WAV (Windows 專用),;AIFF (Mac專用), or MP3 (兩者均可)音效匯入Flash。
如果系統安裝有4或4以上的QuickTime,就能匯入以下這些額外的音效檔。

  • Sound Designer II (Macintosh獨用)
  • Sound Only QuickTime Movies (Windows 或 Macintosh)
  • Sun AU (Windows or Macintosh)
  • System 7 Sounds (Macintosh獨用)
  • WAV (Windows or Macintosh)

Flash將音效與點陣圖及元件存在元件庫內。像使用圖像元件那樣,只需要使用一個音效檔,就能在影片中以不同的方式來使用之。若要在許多 Flash影片中分享音效,能夠將音效包含在共享元件庫內。
要使用共享元件庫內的音效,需在Symbol Linkage Properties對話框內為音效檔案指定一個辨識字串,該辨識字串也能夠當做ActionScript內的一個物件來使用該音效。有關 ActionScript,請參閱ActionScript Help。

音效會用到相當量的儲檔空間及隨機存取記憶體(RAM)。然而,MP3的音效資料被壓縮得比WAV或AIFF音效資料還小。通常,使用WAV或AIFF檔 時,最好使用16-bit 22 kHz單軌音(立體音的檔案是單軌音的兩倍大),但Flash能夠在11 kHz, 22 kHz, or 44 kHz的取樣率下匯入8位元或16位元的音效。 Flash在轉存時能夠將音效轉換為較低的取樣率。參看 Compressing sounds for export。
注意:被錄成非11kHZ倍數(如8, 32或96KHz)格式的音效在匯入Flash時會被重新取樣(resample)。
要在Flash為音效加特效,最好匯入16-bit的音效。如果電腦的RAM有限,則使用簡短的音效片段,或使用8位元而非16位元的音效。

匯入音效

  1. 選擇檔案 > 匯入。
  2. 在「匯入」對話框,選取並打開所要的音效檔。
    匯入的音效會被置入當下影片的library內。
注意:你也能夠從common library將一音效拖拉放在當下影片的library內。

[音效加入影片]
音效要加入影片,就指派一音效到一個layer,並在Sound浮動面板上設定option。我們建議每一音效安置在個別的layer。
音效加入影片的步驟:

  1. 若音效尚未匯入,則先匯入音效。
  2. 選擇插入> 圖層,為該音效新增一個圖層。
  3. 在該新增音效圖層被選取下,從元件庫將音效拖曳到舞台上,該音效會加進當下的圖層。
    你能夠在一個layer或在有其他物件的layer置入數個音效。 但是,我們建議每一音效安置在個別的layer。每個layer運作起來會像一個音軌。當播放影片時,所有layer中的音效會被組合起來。
  4. 選擇Window > Panels > Sound。
  5. 在Sound浮動面板,從彈現式清單內選擇一個音效檔。
  6. 從彈現式Effects清單選擇一個option:
    • None﹣ 該音效不用特效,選此option會將之前所用的特效刪除。
    • Left Channel/Right Channel ﹣音效只在左或右音軌播出。
    • Fade Left to Right/Fade Right to Left ﹣音效從一音軌順切到另一音軌。
    • Fade In ﹣音效淡入。
    • Fade Out﹣ 音效淡出。
    • Custom﹣ 讓你利用Edit Envelope來做音效的In及Out點。參閱Using the sound-editing controls。
  7. 從Sync彈現清單式選擇一種同步option:
    • Event-將該音效與一事件同步。事件音效與Timeline無關,當其起始關鍵影格一出現,就開始播放並全程播完,縱使影片停了。播放已出版的影片時,事件音效會被混合。事件音效的例子是當使用者點按按鈕時播放的音效。
    • Start﹣像事件一樣,一個新的音效分身開始被播放,但若該音效已在播放則除外
    • Stop﹣ 被指定的音效停止播放。
    • Stream﹣ 將該音效同步以便在Web伺服器播放。Flash強迫動畫與串流音同步。若Flash動畫不夠快,就會跳格。若動畫停止則串流音效停止。同樣地,串流音效 不會播放出比其所佔的影格還要多的音效。串流音效在出版(publish)影片時會被混合起來。串流音效的例子之一是一位角色的聲音在數個影格中播放。
      注意:如果使用MP3音效為串流音效,必須在匯出時重新壓縮。參閱Compressing sounds for export。
  8. 為Loop鍵入一個值指定該音效迴播的數次。持續式播放就鍵入大數字。例如,要一個15秒的音效播放15分鐘,就鍵入60。
    注意:若串流音效被設為迴播,則影格會被加進影片,且檔案會音效迴播而加大,所以我們不建議迴播串流音效。