主要內容
基本操作提要
在實例1和實例2中我們學習到了【移位】設計按鈕的使用,在下述內容中,我們使用多個小的實例來學習authorware所提供的多種實現文本和圖形特技的工具和使用方法,包括:
讓對象動起來,【移位】設計按鈕的使用,實際動畫(數字性電影)的引入;
顯示效果、擦除效果的設置;
圖形和文本顯示中層的概念,利用層來產生特殊的顯示效果;
【判定】設計按鈕和判定分支結構的使用和設置。
實例過程
在很多情況下,動畫的吸引力遠遠超過了靜止的圖像和呆板的文本,其說服力是非常強大的。在目前的多媒體設計中,越來越多的動畫和聲音引入到娛樂作品和教學作品中,大大激起了用戶的興趣。
authorware 為程序設計人員提供了簡單的二維動畫制作能力,雖然同一些專業的動畫制作工具比起來遜色不少,但對于一般的動畫要求,這種功能是非常實用的。
在authorware設計的程序中,對象有兩種運動方式:即對象沿一定路徑的運動和對象實際的動畫。
對于對象沿一定路徑的運動,我們可以使用authorware提供的【移位】設計按鈕來實現。authorware的【移位】設計按鈕提供的運動方式創建的路徑動畫可使對象,如球形物體、圖形或正文對象在一定的時間內跨越展示窗。其特點是:在運動過程中,對象不改變方向、形狀和大小。例如在實例一中,紅旗的運動演示了路徑動畫。
對象實際的動畫可使球圖形自轉、圖象滾動以及文本的變形等。我們可以通過引入數字電影來實現實際的動畫;然而,在實際的動畫中,動畫在展示窗口中實際的位置不可能改變。
在實際的應用中,我們將這兩種動畫方式結合起來。如旋轉的箭頭為實際的動畫,飛行的箭頭為路徑動畫,我們將這兩種動畫結合起來,可以設置一個旋轉的箭頭飛向靶子的復合動畫效果。
下面請讀者分別學習【移位】設計按鈕的使用和【數字化電影】的引入。
步驟1【移位】設計按鈕的使用和設置:
在authorware的設計按鈕中,提供了一種能夠移動對象的設計按鈕,【移位】設計按鈕,利用【移位】設計按鈕可以把一個【顯示】設計按鈕中顯示的對象從展示窗口的一個位置移動到另一個位置。
【移位】設計按鈕本身并不含有要移動的對象,它只是移動包含在其它設計按鈕中顯示的對象,所有【移位】設計按鈕必須和具有顯示功能的【顯示】設計按鈕或【交互作用】設計按鈕結合起來使用,才能用【移位】設計按鈕來移動顯示的對象。
一個【移位】設計按鈕只能對一個設計按鈕中的所有對象進行移動,【移位】設計按鈕只能移動一個【顯示】設計按鈕或【交互作用】設計按鈕中所有的對象,不能移動單個的對象,如果想移動單個的對象,必須將該單個的對象單獨放到一個【顯示】設計按鈕中。
多個【移位】設計按鈕可以作用于同一個顯示對象,這些【移位】設計按鈕作用于同一個顯示對象時可以使用不同的動畫方式,但不能對同一個顯示對象同時起作用。
要想移動某個設計按鈕中顯示的對象(包括圖像或文本),就必須將【移位】設計按鈕放到該設計按鈕的后面。
請讀者注意:在同一個文件中,不允許有相同名字的【移位】設計按鈕。
利用authorware提供的【移位】設計按鈕,我們可以實現圖4-1所示的五種方式的路徑運動。
圖4-1 【移位】設計按鈕移動對象的五種方式
(1) 至固定點的運動(兩點間的運動)。這種運動方式是將顯示對象從展示窗口中的當前位置運動到指定的終點位置。
(2) 至固定直線的運動(點到直線計算點的運動)。這種運動方式是將顯示對象從展示窗口中的當前位置運動到定義了起點和終點的直線的某一點上。
(3) 至固定區域的運動(點到區域計算點的運動)。這種運動方式是將顯示對象從展示窗口中的當前位置運動到定義了范圍區域中的某一點上。
(4) 沿任意路徑到終點的移動。這種運動方式是將顯示對象沿定義的路徑從展示窗口中的當前位置運動到終點。
(5) 沿任意路徑到指定點的移動。這種運動方式是將顯示對象沿定義的路徑從展示窗口中的當前位置運動到路徑上的任意位置。
第四和第五種移動方式非常相似,不同之處是第四種方式是沿指定路徑直接移動到終點,第五種方式是沿指定路徑移動到路徑上的任意點。
下面,請讀者來逐一學習各種移動方式的特性和使用方法。
步驟2【移位】設計按鈕對話框設置:
雙擊流程線上的【移位】設計按鈕,打開移位設計對話框,如圖4-2所示。
圖4-2 【移位】設計按鈕對話框
(1)【type】:移動類型選項列表為所有authorware提供的五種移動類型的列表,我們可以在該選項列表中選擇合適的移動類型,對于每一種移動類型,都有一個與該移動類型相匹配的【移位】設計按鈕對話框。
(2)【layer】:為設置層的正文輸入框,在該正文輸入框中輸入要移動的對象在展示窗口中顯示時所處的層。
在動畫的演示過程中,不可避免地會出現不同顯示對象之間的重疊現象。在重疊時為了決定那個顯示對象在上面,那個顯示對象在下面,以產生不同的動畫效果,authorware為我們提供了層的概念,利用顯示對象層次的高低來決定重疊時它們之間的關系。當兩個顯示對象重疊時,層次級別高的顯示對象顯示在層次級別低的顯示對象的上面。
在【layer】正文輸入框中,我們可以輸入正整數、負整數和零。為了讓讀者理解層次的級別是如何影響動畫的演示效果的,讓我們以一個簡單的例子來觀察其效果。
請讀者按照圖4-3所示的程序的流程結構和相應的圖片,建立顯示對象和設置相應的移位】設計按鈕。
請讀者注意,在設置【移位】設計按鈕對話框時,將所有【移位】設計按鈕的并發性選項都設置為【concurrent】同時執行。這樣可以觀察三個顯示對象同時移動時相互重疊的效果。
圖4-3 層的動畫效果實例
移動的時間控制設置用移動所需時間來控制,三個【移位】設計按鈕都把所需時間設計為1秒,為移動的顯示對象設定相同的目標點。
圖4-4不同層次顯示對象的疊效果1
圖4-5 不同層次顯示對象的重疊效果2
將實例中的方塊設置為第0層,橢圓設置為第1層,多邊形設置為第2層。
這樣在運動的過程中,方塊的運動速度最快,多邊形的運動速度最慢,橢圓將趕上多邊形,由于橢圓所處的層次級別低于多邊形所處的層次級別,則多邊形顯示在橢圓的上方,覆蓋了橢圓的部分圖形,當方塊趕上橢圓和多邊形后,由于方塊比它們兩個的層次級別都低,所以方塊處于最底層,被橢圓和多邊形所覆蓋。程序運行中的重疊效果如圖4-4所示。
下面讓我們來改變一下三種顯示對象所處的層的級別,然后再看一看重疊的效果。
我們把方塊設置為第2層,將橢圓設置為第0層,多邊形設置為第1層。
圖4-6 【移位】設計按鈕順序
重新運行程序,程序運行中的重疊效果如圖4-5所示。
注意:
在這里,顯示對象層次的級別只限于在運動過程中,也就是說,顯示對象在運動的過程中遵循層次級別的重疊方式。當顯示對象運動到目的地靜止后,顯示對象之間的重疊方式則不再遵循設定的層次級別方式,靜止后的重疊方式由程序主流程線上【移位】設計按鈕的先后位置決定(如圖4-6所示)。
如圖4-6所示,因為移動方塊的【移位】設計按鈕在多邊形和橢圓【移位】設計按鈕的最后面,所以在靜止后的重疊圖形上方塊永遠處在橢圓和方塊上面。
重疊的效果如圖4-7所示。
圖4-7靜止顯示重疊效果
請讀者注意該區別,不要把運動中的重疊效果和靜止后的重疊效果混淆起來,但讀者可以使用將【移位】設計按鈕在主流程線上的順序和顯示對象重疊中的層次級別相對應起來,使顯示對象在靜止后同運動時具有相同的重疊效果。
(3)【timing】為時間的控制選項。authorware提供兩種時間的控制方法:
①time(sec):使用移動顯示對象所需時間來控制,該控制方法為authorware默認的控制方法。
②rate(sec/in):用顯示對象移動的速率(英寸/秒)來控制。在【timing】正文輸入框中我們可以輸入任何數字類型的數值、變量或表達式。例如:我們選擇time(sec)時間控制方式,然后在其下方的正文輸入框中輸入5,意思是顯示對象從起始點移動到終點的時間就是5秒。 我們選擇rate(sec/in):然后在其下方的正文輸入框中輸入0.2,表示顯示對象從起始點到終點的移動速度為0.2英寸/秒,如果起始點和終點之間的距離是1英寸的話,顯示對象到達終點所需的時間為5秒。
不同的時間控制方式是可以達到同樣的顯示對象動畫效果。
我們在設置不同的顯示對象同時到達的情況下用時間的控制方式。
設置固定速率或不同速度的對象的運動可以使用速度控制方法。
兩種方法結合使用,可以產生豐富、生動的二維動畫效果。
authorware提供的移動功能的適用范圍非常廣泛,不僅僅是圖形可以使用該功能,文本、數字化電影等都可以利用【移位】設計按鈕來產生動畫的效果。
(4)【concurrency】:并發控制選項來決定移動開始后authorware將干什么。
①【wait until done】(等待直至完全移完)選項:選擇該選項,authorware在執行該移位設計按鈕后,暫停所有的動作,等待移位設計按鈕對顯示對象的移動完成后再執行下一個設計按鈕。
②【concurrent】(并發選項):選擇該選項,authorware在執行該移位設計按鈕后,流程 線上的下一個設計按鈕被繼續執行。
③【perpetual】(常動選項):選擇該選項,當被激勵的對象得以顯示并且給定的表達式為真的話,帶有【perpetual】并發性設置的移位設計按鈕將執行。在authorware程序的運行過程中,authorware時刻監視著設定有【perpetual】并發性設置的移位設計按鈕的觸發條件,一旦條件為真,則authorware自動執行該移位設計按鈕來移動顯示對象。
注意:
【perpetual】選項不適用于至固定點的移動,適用于其它四種類型的移動。
(5)【beyond range】越界選項列表:一般來說,我們可以使用變量或表達式來控制至直線上計算點或至區域計算點的移動。在這種情況下,【beyond range】:越界選項列表是非常重要的。
①【stop at ends】(在終點停止選項〕:該選項防止把對象移動到規定的線或區域外面。例如:如果控制動畫的數值、變量或表達式的值大于線或區域的終點值時,則對象將僅僅移動到線或區域的終點位置。
②【loop】(環路選項):該選項將線性路徑看作其終點位置和起點位置連接起來,例如:如果起點位置值為0,終點位置值為100,控制移動的值為150,那么對象將移動到直線上的某個位置(該位置數值等于50=150-(100-0))。
③【past ends】(越過終點)選項,選擇該選項,authorware建立一條長度無限并假定了起點位置、終點位置和數值都是線上的簡單參考點。
例如:如果起點值為0、終點值為100,而支配動畫的值是200,那么該對象的位置是在建立的路徑外約一倍于線的距離的位置(距終點)。
圖4-8邏輯結構
圖4-9【移位】設計按鈕【motion】對話框的設置
步驟3至固定點的移動:
該移動方式的實例和內容設置參見實例1中移位設計按鈕移動紅旗的使用(程序結構如圖4-8所示)。
【移位】設計按鈕【motion】對話框的設置如圖4-9所示。
步驟4至固定直線的移動:
該移動方式的實例和內容設置參見實例2中移位設計按鈕移動箭頭的使用(程序結構如圖4-10所示)。
該【移位】設計按鈕的【motion】對話框(如圖4-11)所示:
圖4-10 實例2中的程序流程結構
圖4-11實例2中【移位】設計按鈕的【motion】對話框
圖4-11中所示的展示窗口中的黑線為我們設定的直線,物體將根據設定的數值移動到該直線的某一點上,該直線的起點假定為數值0,終點假定為數值100,越界選項選擇【loop】(環路),無論輸入的數值、變量或表達式的值有多大,顯示對象最終都要移動到設定的直線上。
圖4-12實例二中【移位】設計按鈕的【layout】對話框
用【layout】對話框(如圖4-12)在展示窗口上設定直線的起始點和終點位置。
單擊圖4-12所示的【base】選項,然后在展示窗口中將箭頭拖動到起始位置釋放,設定直線的起始位置,authorware將該位置默認為值置為0。
單擊圖4-12所示的【end】選項,然后在展示窗口中將箭頭拖動到終點位置釋放,設定直線的終點位置,authorware將該位置默認為值置為100。
單擊圖4-12所示的【destination】選項,在該選項的正文輸入框中輸入值、變量或表達式等數字型的參數。來設定對象移動到直線上的位置。
步驟5至固定區域的移動:
如果用戶希望通過平面上的x軸和y軸坐標的方式來決定一個點,從而使顯示對象移動到該點上,可以使用該移動方式,我們可以稱該移動方式為沿二維平面定位的動畫設計。
首先,我們要在展示窗口上建立一個(x,y)坐標平面,x和y軸的起始點和終點位置是可以任意修改的,x-y軸的方向有起始點和終點的位置決定,建立了(x,y)平面之后,相應的坐標值就決定了平面上的某個點的位置。
然后,我們在【移位】設計按鈕的【layout】對話框中的【destination】正文輸入框中輸入數值、變量或數字型表達式來決定x-y平面上的點。【移位】設計按鈕根據輸入的數值將對象移動到該平面上的相應點。
下面,我們用一個例子來學習如何設計沿二維平面定位的動畫。這個動畫是一個填充的小游戲,在屏幕上有一個灰色方塊,在方塊中心有一個白色的圓盤,從屏幕的下方有一個同樣大小的圓緩慢移動到方塊中心,填充白色圓盤(如圖4-13所示)。
圖4-13 程序設計邏輯結構
準備工作:
(1)兩幅圖片(如圖4-14所示)。其中中心有圓盤的方塊放置在方塊【顯示】設計按鈕中。
圖4-14 【顯示】設計按鈕中的兩幅圖片
與方塊中心的圓盤大小相同的圓放置在圓【顯示】設計按鈕中。
(2)在主流程線上放置一個【移位】設計按鈕,來驅動【顯示】設計按鈕中的顯示對象圓。
程序的邏輯結構如圖4-13所示,由于讀者在前面的例子中已經學習了【圖形工具箱】的使用方法,兩幅圖片的準備我們在這里就不再贅述。
我們將學習的重點放到【移位設計按鈕的設置上。
首先,雙擊(或執行快捷鍵ctrl+r)打開圖4-13所示的【移位】設計按鈕,彈出【移位】設計按鈕的【motion】對話框,如圖4-15所示,設置該對話框中的相應設置:
圖4-15【移位】設計按鈕的【motion】對話框
(1)在【type】選項列表中我們選擇【direct to grid】直接移動到區域。
(2)在【timing】選項列表中選擇authorware的默認選項“time(sec)”,以對象移動的時間來控制移動。在下方的正文輸入框中輸入對象的移動時間3秒。
(3)【concurrency】并發選項:選擇authorware默認的選項【wait until done】。
(4)【beyond range】越界選項:選擇authorware默認的選項【stop at ends】。
然后,單擊【layout】命令按鈕,彈出【移位】設計按鈕的【layout】對話框,(如圖4-16所示)。在該對話框中,我們設置(x,y)坐標平面,設置平面的起始位置和終點位置,并設置圓盤移動的區域中目的點。
圖4-16【移位】設計按鈕的【layout】對話框
(1) 調整該對話框的位置,使展示窗口中的圖形對象顯示出來。
(2) 設置(x,y)坐標的起始位置:單擊圖4-16所示的【layout】的【base】選項,然后拖動黑色圓盤到圖示位置,使圓盤的中心和方塊左上角相重疊。
(3) 設置(x,y)坐標的終點位置:單擊圖4-16所示的【layout】的【end】選項,然后拖動黑色圓盤到方塊的右下角,使圓盤的中心和方塊右下角相重疊。在展示窗口上會出現圖4-17所示的具有黑色邊框的區域,該區域就是我們設置的具有起始點和終止點的x-y坐標區域,單擊【layout】對話框中的【base】和【end】選項,我們會觀察到圖4-17所示的圓盤的位置在起始點和終點之間切換。authorware默認的起始的坐標為(0,0),終點坐標為(100,100)。
圖4-17 具有黑色方框的設 定區域
(4) 設置圓盤在平面區域上填充時目標的坐標:單擊圖4-16所示的【layout】對話框中的【destination】選項,用鼠標將圓盤拖動到圖4-16中方塊中的白色圓盤處釋放,使黑色圓盤的中心和白色圓盤重疊,如圖4-18所示。
圖4-18 設置移動對象在區域中的目標點
請讀者在移動黑色圓盤的過程中注意觀察【destination】正文輸入框中坐標值的變化。
在精確的動畫設計中,我們可以手工輸入數字來精確定位移動對象的目標點。在該正文輸入框中,我們可以輸入任何數字型的數值、變量、表達式等,可以用各種參數來調整圓盤移動的目標點。
最后,單擊【ok】命令按鈕結束設置。
運行程序觀看運行效果,使用authorware【control】菜單項中的【restart】命令或者快捷鍵(ctrl+r)來觀察程序執行的效果。
我們看到,黑色圓盤在3秒鐘內,沿直線移動到我們設定的終點位置,在方塊的白色圓盤空白中,黑色圓盤將其填充。
讀者可以利用該方法設置更多的豐富生動的二維平面動畫。
步驟6沿任意路徑到終點的移動:
用【移位】設計按鈕移動動畫對象,使其沿設定的路徑以一定的速率從起始點運動到終點。在到達終點后,如果用戶設定的變量或表達式條件為true的話,該動畫對象會沿著設定的路徑繼續運動下去。
下面我們將以一個小的例子來學習這種【移位】類型的使用方法。
下面讓我們先看一看這個例子需要做哪些工作:
(1) 準備需要移動的對象和相應的背景等。將它們放到相應的【顯示】設計按鈕中。
(2) 添加【移位】設計按鈕到流程線上。
(3) 選中要移動的對象
(4) 完成對象移動路徑的設置。
(5) 對設定的路徑進行調整和編輯。
(6) 完成【移位】對話框中相關選項的設置。
我們的實例顯示的是太陽從山林中冉冉升起,白云在太陽四周緩緩飄蕩,然后太陽又緩緩地沒入群山中。如圖4-19所示。
圖4-19 山林 白云 太陽的動畫演示實例
整個實例包括下列演示效果:
(1) 顯示山林。
(2) 顯示白云1。
(3) 顯示白云2。
(4) 白云1動畫。
(5) 白云2動畫。
(6) 日出日落的動畫。
各部分在設計窗口中的流程線上的邏輯結構如圖4-20所示。
圖4-20 程序邏輯結構
下面請讀者逐步實現該動畫演示效果:
(1)拖曳一個【顯示】設計按鈕到程序流程線上,命名為山林,利用【圖形工具箱】中的【多邊形】繪圖工具繪制圖4-19所示的山林,為山林填充合適的顏色。
(2)拖曳另外一個【顯示】設計按鈕到程序流程線上,命名為太陽,利用【圖形工具箱】中的【橢圓】繪圖工具繪制圖4-19所示的太陽。并為太陽填充紅色。
(3)分別拖曳兩個【顯示】設計按鈕到程序流程線上,命名為白云1和白云2,利用【圖形工具箱】中的【多邊形】繪圖工具繪制圖4-19所示的白云。并為白云填充合適的顏色。
(4)拖曳一個【移位】設計按鈕到主流程線上,命名為移動白云1,把白云1設定為移動對象,使用移動到固定點的移位類型來移動白云,該【移位】設計按鈕的【motion】對話框中相關內容的設置如圖4-21所示。
圖4-21移動白云1設計按鈕的【motion】對話框
注意:
我們在該對話框中,將對話框中白云1的層次級別設置為3。在該程序中,層次級別為3是最高的級別,當顯示對象重疊時,層次級別為3的對象顯示在最外層。
(5)拖曳另一個【移位】設計按鈕到主流程線上,命名為移動白云2,同步驟四相同地設置白云2的動畫效果。
(6)拖曳第三個【移位】設計按鈕到主流程線上,命名為移動太陽。請讀者注意,該【移位】設計按鈕將使用沿固定路徑移動到終點的移位方式。
該【移位】設計按鈕的設置是我們學習的重點,希望讀者注意:
(1)雙擊打開標題為移動太陽的【移位】設計按鈕的【motion】對話框(如圖4-22所示),對話框中相關內容的設置如下:
【type】:移動類型選項列表:選擇【path to end】移位類型,沿指定路徑移動到路徑的終點。
【layer】:層次級別,將太陽這個顯示對象的層次級別設置為1級,在本實例中,層次級別為1的太陽是最低的層次級別,和其它顯示對象重疊時,太陽總是被遮蓋的,浮云遮日么。
【timing】:時間控制選項列表選擇使用time(sec),使用對象的移動時間來控制。
下方的正文輸入框中輸入太陽移動所需時間,我們輸入8秒。
【concurrency】并發項控制選項列表:我們選擇【concurrent】選項,當執行該移位設計按鈕后,authorware不需要等待移位對象移動結束可以執行下一個流程線上的設計按鈕。
(2)單擊圖4-22中的【layout】命令按鈕打開該【移位】設計按鈕的【layout】對話框,(如圖4-23所示)。
圖4-22 移動太陽設計按鈕的【motion】對話框
在該對話框中,一改其它移位類型對話框的方式,沒有正文輸入框,只有一個【undo】和【delete】命令按鈕,這兩個命令按鈕是用來刪除在路徑設置過程中的關鍵點。我們可以使用這兩個命令按鈕來編輯路徑。
打開該對話框時,對話框的中間部位有一個提示“click object to be moved”,提示要求用戶選定要移動的對象,用鼠標單擊要移動的對象,則該對象的圖形會自動出現在圖4-23所示對話框左上方的對象預覽窗口中。
定移動對象后,提示改變為“drag object to extend path”,提示要求用戶用鼠標拖動對象移動來產生動畫路徑。
在設置對象移動的路徑之前,讓我們先看一看路徑的產生方法:
產生路徑的方法是用鼠標拖動要移位的對象到合適的位置,釋放鼠標后產生一個節點。節點用三角形符號表示。繼續用鼠標拖動對象到另一個位置,產生另一個節點,重復操作產生其它節點,連續產生的節點被節點間的直線連接起來,形成直線段的移動路徑。如圖4-24所示。
圖4-24產生直線連接路徑
在圖4-24中,節點的符號是小的空心三角形,當該節點處在被選中狀態的時候,節點是黑色實心三角形,我們可以用鼠標拖動節點來改變節點的位置,從而調整移動的路徑。對路徑進行修改,還可以使用【delete】命令按鈕來編輯路徑上的節點。節點為三角形表示節點間用直線相連接,我們可以用鼠標雙擊三角形標識的節點,則節點的符號轉化為圓形符號,圓形符號表示節點間是用曲線的圓弧過渡連接。請讀者逐個雙擊圖4-24中的三角形節點符號,使它們都轉化為圓形符號節點。如圖4-25所示。
圖4-25 產生曲線過渡路徑
從圖4-25上,我們可以看到,原來的直線連接路徑轉化成為曲線過渡連接的路徑,當然,讀者也可以使用直線連接和曲線過渡連接相互結合的路徑。
路徑的編輯:【delete】命令按鈕用來刪除當前節點,當前節點是用黑色實心符號來表示其處在選中狀態,如果要刪除某節點,只需將該節點設定為當前節點,處在選中狀態,單擊【delete】命令按鈕即可刪除該節點。刪除該節點后,該節點兩側的節點自動相連。
調整節點的位置:我們可以用鼠標拖動節點來調節節點的位置。
增加節點:只需用鼠標在需要增加節點的路徑上單擊鼠標,就會產生一個新的節點。
請讀者注意:鼠標必須單擊在路徑線上,才能夠添加節點。
【undo】命令按鈕:該命令按鈕用來撤銷上一次的修改。無論用戶在前一次進行了任何操作,都可以使用該命令按鈕來撤銷上一次操作。
下面請讀者來使用上述方法來設計移動太陽【移位】設計按鈕移動太陽的路徑。
(1)首先調整【layout】對話框,使展示窗口顯示出來,(如圖4-26所示)。
圖4-26 設置運動的路徑
(2)將太陽設定為移動的對象,如圖4-26所示,產生直線連接的運動路徑。
(3)將直線連接的連接轉化為曲線過渡連接的路徑。
(4)調整編輯路徑。
(5)單擊【ok】命令按鈕結束該【移位】設計按鈕的設置。
整個程序設置完畢,請讀者使用authorware的【control】菜單項中的【restart】命令(或使用快捷鍵ctrl+r)來運行程序,請讀者來觀察程序的運行效果,了解沿固定路徑到固定點移動的移位方式。注意以下幾點:
(1)在觀察程序的運行效果時,請讀者注意各顯示對象在重疊時由于其層次級別決定的重疊效果。
(2)在【移位】設計按鈕中,【motion】對話框中的【concurrency】選項列表中選擇【concurrent】選項,使用該選項,當移位設計按鈕執行后,authorware不需要等待對象的移動完畢,即可以執行流程線上的下一個設計按鈕。若程序流程線上的三個移位設計按鈕都設計成為【concurrent】,則在程序的運行過程中,三個移位設計按鈕對不同顯示對象的移動同時進行。因此我們可以看到白云和太陽在天空中同時移動、飄浮。
步驟7沿任意路徑到指定點的移動:
沿任意路徑到指定點的移動是在沿任意路徑到固定點的基礎上設定的,路徑的設置等非常相似。兩者的區別是,沿任意路徑到固定點的移動沿路徑一次性到達終點;沿任意路徑到指定點的移動是沿路徑運動到路徑上的某一點為目標點。
下面請讀者在沿任意路徑到固定點移動實例的基礎上來設計一個沿任意路徑到指定點的移動。
上一實例是太陽升起和落山的動畫,我們在這里設計一個太陽升到天空的動畫,將太陽的目標點設定為路徑上的最高點。
圖4-27 設定沿任意路徑到指定點移動的【motion】對話框
動畫效果是當太陽升到最高點后,靜止在天空中。
我們在上一實例的基礎上來實現該動畫的設計。
(1)單擊圖4-20中的標題為移動太陽的【移位】設計按鈕,彈出該【移位】設計按鈕的【motion】對話框(如圖4-27所示)。
(2)設定【motion】對話框:
【type】:運動類型選項列表:移動類型選擇【path to point】。沿任意路徑到指定點。
【concurrency】:并發選項列表:該選項選擇【perpetual】。
【beyond range】:越界選項列表,該選項選擇【loop】。
(3)單擊圖4-27中的【layout】命令按鈕,彈出圖4-28所示的【layout】對話框。
(4)設置【layout】對話框,在該對話框中,我們設定任意路徑和太陽移動的目標點,
其方法同沿任意路徑移動到終點中的路徑的設置的方法相同。
圖4-28 設定沿任意路徑到指定點移動的【layout】對話框
【設置路徑】:同點到直線動畫方式一樣,authorware在該路徑上加上了一個沿路徑的相對的坐標系,在authorware中,我們把路徑的起始點設置為坐標零點“0”,把路徑的終點坐標設置為“100”。這是authorware默認的值,用戶可以按照自己的愛好設定坐標的值,例如我們可以把路徑的終點設置為節點的總數。方法是在圖4-28中【layout】對話框中【base】和【end】正文輸入框中直接輸入理想的值即可。
選項【destination】:用來設置目標點,有兩種方法來設置目標點。
方法一:用鼠標拖動物體到路徑上的某一點,然后釋放,在【destination】正文輸入框中的值自動改變。太陽所釋放的位置就是物體移動的目標點。
方法二:直接在正文輸入框中輸入數值、變量、表達式等數值型參數。
圖4-29 沿任意路徑移動到指定點的最終效果
(5)單擊【layout】對話框中的【ok】按鈕完成該對話框的設置。
使用authorware的【control】菜單選項中的【restart】命令(快捷鍵為ctrl+r)來執行程序來觀看動畫效果。太陽沿指定路徑緩緩移動到天空中,然后靜止在天空中(該路徑的最高點)。如圖4-29所示。
注意:
在拖動對象移動的過程中,不要拖曳路徑的節點(三角形或圓形),而是拖動實際的對象來移動對象。
數字化電影(digital movie)的引入
作為一個優秀的多媒體制作工具,authorware提供了強大的多媒體編輯功能。它可以使各種媒體相互結合起來,使各種媒體之間相互聯系成為一個有機的整體,從而發揮出其強大的媒體優勢。authorware支持文本、聲音、圖形、圖像、數字化電影、視頻等多種媒體信息,將它們有機地組合起來。
這里,請讀者首先學習authorware支持的一種,也是非常重要的媒體方式,即數字化電影。數字化電影屬于動畫形式的一種。authorware本身不能產生數字化電影,我們可以使用其它的制作工具(如macromedia 公司的director動畫制作軟件)來制作authorware支持的數字化電影格式,然后引入authorware程序中。雖然authorware本身只能產生二維的動畫效果,但我們可以通過引入數字化電影來產生三維的動畫效果,將三維的數字化電影和二維的authorware平面動畫相結合可以產生運動的三維圖像。使多媒體程序的表達方式更豐富。
(1)authorware支持的數字化電影格式介紹:
圖4-30 【數字化電影】對話框
圖4-31【數字化電影】設計按鈕
authorware作為一個多媒體的制作平臺,軟件本身不能產生數字化電影。它的優勢是將各種媒體有機地組合成一個整體。authorware支持多種數字化電影格式,所以,讀者可以使用其它的數字化電影制作軟件,例如3dmax、macromedia director、easy 3d等能夠產生數字化電影格式的軟件生成數字化電影,然后引入到authorware的程序中。
下面介紹的是authorware支持的數字化電影格式,作為讀者的參考。
步驟2引入數字化電影的方式:
(1)拖曳一個【數字化電影】設計按鈕到程序的流程線上,如圖4-31所示,雙擊該設計按鈕彈出【movie】對話框(如圖4-30所示)。
(2)單擊圖4-30中最左邊的【import】命令按鈕,彈出圖4-32所示的引入文件對話框。
圖4-32 引入文件對話框
(3)選擇要引入的文件。在圖4-32中有一個authorware支持的數字化電影格式的列表,在該列表中列出了可用的文件格式。在中間的瀏覽區域找到需要引入的文件,單擊【import】即可。
(4)對引入數字化電影的播放等控制進行設置,具體的設置內容請讀者稍后學習。
authorware支持的數字化電影格式有dib、 flc、fli、cel、quicktime、director movies、 mpeg和pics等,在這些數字化電影類型中,有些必須直接輸入到authorware中,有些需要作為外部文件來進行鏈接。如pics和 flc/fli數字化電影格式必須直接輸入到authorware中,而其它類型的數字化電影格式就必須作為外部文件來進行鏈接。
對于直接輸入的數字化電影格式,authorware在運行過程中一般不會出什么問題,但對于外部鏈接的數字化對于,authorware在運行過程中需要合適的驅動器和使用特定平臺上的播放工具。因此,為了順利運最終作品,我們在文件的打包和發行時,必須包含這些外部可鏈接的文件。
數字化電影格式的介紹:
(1)director文件(dir,dxr):
director數字化電影是由macromedia 公司的director軟件產生的。多媒體director數字化電影因具有完善的交互性而為交互式多媒體作品設計人員所青睞。在authorware中可以播放這種數字化電影。當將含有lingo(director的語言,支持交互式操作)的director版本的數字化電影加載到authorware中,便可以在播放數字化電影的同時直接與數字化電影通過外設(鼠標、鍵盤等)發生交互作用。
director文件是保存在authorware外部,在最終發行作品時,需要將這些文件按照固定的目錄位置同authorware程序一并發行。
(2)windows 視頻標準格式(avi):
avi數字化電影是windows支持的標準格式,它同樣是authorware的外部文件,但是,要想在authorware中播放avi數字化電影,必須要保證在開發環境中和最終用戶使用的系統上都安裝有播放avi格式文件的驅動文件。
(3)windows下的quicktime文件(mov):
mov數字化電影是蘋果公司開發的一種適用于windows的格式,它同樣是authorware的外部文件,但是,要想在authorware中播放mov數字化電影,必須要保證在開發環境中和最終用戶使用的系統上都安裝有播放quicktime格式文件的媒體播放器。該格式文件可以將聲音和圖像結合在一起。
(4)animator、animator pro 和3d studio文件(flc、fli、cel):
這幾種軟件是autodesk公司的動畫制作軟件。這些格式的文件被保存在authorware的內部,只能在windows環境下將該格式的文件調入。這幾種文件格式是跨平臺的,在windows 和macintosh環境下都可以使用該格式文件。
(5)mpeg文件:
該格式文件是保存在authorware外部,mpeg文件將聲音和圖像結合在一起,壓縮比較大,能夠得到較好的播放效果,在windows系統的計算機上,一般需要有一塊視頻卡來播放這些文件。但是,目前已大量出現對mpeg文件的解壓播放軟件。在macintosh系統的計算機上,不需要安裝硬件,但需要相應的軟件支持。
(6)位圖組合文件(bmp bitmap sequence):
authorware允許使用一系列位圖組合成的連續動畫。這些bmp文件必須放置在同一個目錄下面,并對它們的名字編號,例如:從sun01.bmp到sun100.bmp。選擇一個位圖文件為數字化電影的起始幀,authorware會自動按照文件的編號順序播放剩余的圖片從而形成一個連續的動畫效果。
使用該方法可以利用簡單的繪圖工具來實現簡單的動畫效果。
(7) 被加載在authorware內部的pics文件:
該格式文件只適用于macintosh計算機,可以在macintosh環境下直接插入到authorware中,被轉化為windows環境下的authorware文件后,被保存在authorware程序內部,只能在windows環境下將該格式文件調入,pics文件不能在windows環境下直接插入到authorware中。
步驟4數字化電影屬性對話框設置:
雙擊【數字化電影】設計按鈕,彈出數字化電影的屬性對話框,(如圖4-33所示):
圖4-33 數字化電影的【movie】對話框
【preview】預覽窗口:在該區域可以預覽要引入的數字化電影。
【播放控制面板】:如圖4-34所示。
圖4-34 播放控制面板
單擊【play】命令按鈕來播放數字化電影,數字化電影播放的起始幀由起始幀輸入框中的輸入值來決定。
單擊【stop】命令按鈕來停止對數字化電影的播放。
單擊【step forward】命令按鈕,數字化電影向前跳動一幀。
單擊【step back】命令按鈕,數字化電影向后退一幀。
在幀計數器【frame counter】區域顯示當前引入的數字化電影的總幀數和當前播放的幀位置。該區域的內容隨數字化電影的播放實時更新。
單擊【import】按鈕,彈出【import】對話框,使用該對話框來選擇要引入的數字化電影文件,并將文件信息引入authorware。
【movie】屬性對話框設置
(1)【file】:文件名輸入框:在該框中顯示的是引入的外部文件的路徑和文件名。我們可以使用該輸入框直接輸入引入的文件的路徑和文件名,同樣我們還可以輸入一個變量或表達式來指定路徑和文件名。
(2)【storage】儲存提示框:該框中只有兩種顯示內容:external(外部文件)和internal(內部文件)。使用該區域來標識引入的數字化電影是存儲在authorware程序的內部還是外部。該區域的內容于引入的數字化電影有關,是authorware自動指定的。
(3)【layer】層次級別的設置: 在該正文輸入框中可以輸入數字化電影的層次級別。數字化電影的顯示層次同一般圖形的顯示層次概念相同。對于數字化電影來說,authorware默認的層次級別是第“0”層,層次級別越高,數字化電影越顯示在上面。
(4)【mode】顯示模式選項列表:使用該選項列表來控制數字化電影在展示窗口中顯示時同其它顯示對象之間的關系。該選項只適用于內部存儲(pics、flc和fli格式類型)的數字化電影文件,外部存儲的數字化電影文件的顯示模式只能是opaque模式。
四種顯示模式介紹如下:
①opaque 不透明顯示模式:播放區將全部覆蓋其下面的對象。快速顯示所有的幀,沒有任意透明的像素,使用該模式,數字化電影將播放得更快一些,并且占用較少的內存空間。
②transparent透明顯示模式:將使數字化電影畫面中以透明顏色顯示的像素點不可見,因此在這些像素點的位置上將顯示出下面對象在該位置的像素,允許其它顯示對象透過數字化電影被顯示出來。從而產生一種透明的效果。authorware默認的情況是將白色作為macintosh movie editor 和pics電影文件的透明色;將黑色作為authodesk animator的透明色。
③matted遮隱模式:使用該模式,將使播放區下面的對象中不可見的像素點轉化為透明的顏色顯示,數字化電影邊緣的白色部分將不顯示出來,只顯示數字化電影本身的內容部分。在默認的情況下,macintosh movie editor 和pics電影文件邊緣的白色部分將被隱去,對authodesk animator數字化電影來說,邊緣的黑色部分將被隱去。
④inverse 反顯模式:在這種模式下,數字化電影畫面的像素點顏色將變成它下面的對象像素點的顏色,從而產生一種反色顯示的效果。
⑤【option】內部選項(該區域的選項如圖4-27所示): 請讀者注意,在該區域的選項并非對所有的文件都適用,當我們引入不同格式的數字化電影文件時,該區域的選項列表中只有和引入的文件格式相關的選項可用,其它的選項處在不可選的狀態,如圖4-35所示。當我們引入了一個windows標準格式avi后,該區域只有四個選項可用。其它兩個選項變成不可使用。
圖4-35 【movie】對話框
下面我們將逐一學習【options】選項區域中所有選項的含義,具體的使用和各選項所適用的數字化電影文件格式請讀者在實際的操作中進行體會。
①【prevent automatic erase】防止自動擦除:選擇該選項將阻止其它設計按鈕所設置的自動擦除選項擦除展示窗口中的數字化電影播放區。選擇該選項后,如果想擦除該數字化電影必須使用【擦除】設計按鈕來擦除展示窗口中的數字化電影。
②【erase previous content】擦除前面的所有內容: 選擇該選項,在顯示當前設計按鈕中的內容之前,authorware將擦除展示窗口中所有前面的設計按鈕所顯示的內容,無論是在與當前顯示內容在同一層還是在不同的層。完全將它們擦除后,再在展示窗口上顯示當前設計按鈕中的數字化電影。
③【direct to screen】直接顯示在屏幕上:選擇該選項,authorware將數字化電影直接顯示到展示窗口中其它顯示對象之上。
注意:
對于外部保存的數字化電影,authorware直接顯示在屏幕上,被放置到所有顯示對象的最上面。在【motion】對話框中該選項不可用。
④【audio on】打開聲音:如果一個數字化電影包含動畫和聲音,打開該選項將在播放動畫的同時播放聲音。authorware默認選擇該選項;當數字化電影不包含聲音時,該選項變為灰色不可用。
⑤【use movie palette】使用數字化電影的調色板: 選擇該選項,authorware將使用數字化電影本身的調色板,而不再使用authorware的調色板,請讀者注意,并非所有的數字化電影都使用該選項。對于有的電影格式,該選項變為灰色不可用。
⑥【interactivity】:選擇該選項,允許最終用戶與具有交互作用的director數字化電影通過外設(鼠標或鍵盤等)進行交互操作。
【timing】屬性對話框設置:(如圖4-36所示):
圖4-36 【timing】對話框
(1)【concurrency】并發控制選項用來決定移動開始后authorware將干什么。
①選擇【wait until done】選項,authorware在開始播放該設計按鈕中的數字化電影后,暫停所有的動作,等待對數字化電影的播放完成后再執行下一個設計按鈕。
②選擇【concurrent】選項,authorware在開始播放該設計按鈕中的數字化電影后,流程線上的下一個設計按鈕被繼續執行。
③選擇【perpetual】選項,當被激勵的對象得以顯示并且給定的表達式為真的話,帶有〖perpetual〗并發性設置的數字化電影設計按鈕將播放該數字化電影。在authorware程序的運行過程中,authorware時刻監視著設定有〖perpetual〗并發性設置的數字化電影設計按鈕的觸發條件,即使該設計按鈕已經執行完畢。一旦條件為真,則authorware自動播放該數字化電影設計按鈕中的數字化電影。
(2)【play】播放模式(如圖4-37所示):
圖4-37 【play】選項列表
該選項列表是用來控制數字化電影的播放方式和播放進程。在該選項列表中有下列選項:
①【repeatedly】重復播放:
選擇該播放模式,在展示窗口中,authorware重復播放該數字化電影,直到有一個【擦除】設計按鈕來擦除該數字化電影。或者使用系統函數mediapause()來終止對該數字化電影的播放。
②【fixed number of times】:固定播放次數: 使用該播放模式,我們可以在下面的正文輸入框中輸入數值、變量或數值型表達式來控制數字化電影的播放次數,authorware默認的值是“1”次,如果讀者輸入值或變量和表達式的值為“0”,authorware將只顯示數字化電影的第一幀。
③【until true】:選擇該播放模式,讀者可以在它下面的正文輸入框中設置變量或表達式;authorware將重復播放該數字化電影,直至讀者設置的變量或表達式值為真。比如:我們在該正文輸入框中設置了系統變量mousedown,則數字化電影會被重復播放,直至最終用戶按下鼠標才結束。
④【only while in motion】:只有在移動時才播放: 該選項對存儲在外部的數字化電影是無效的,也就是說【storage】標識為【internal】時該選項才有效。 對于pics數字化電影來說,選擇該顯示模式后,authorware在展示窗口上只播放該數字化電影的第一幀,只有當該電影被一個【移位】設計按鈕移動或被最終用戶的鼠標拖動時,該數字化電影才開始播放。該選項對于某些特殊效果的動畫是非常有幫助的,例如:我們在拖動一個畫面時,畫面上的動物實現某些動作。
⑤【times/cycle】:該播放模式對外部存儲的數字化電影文件無效。選擇該播放模式,authorware限制每一次播放中重復的次數。當選擇該播放模式后,authorware將調整播放的速度來完成每一次播放中指定的次數。 例如,讀者可以模擬月球繞地球旋轉的實例。在該實例中,月球自轉是一個數字化電影動畫,讓這個數字化電影動畫沿一定路徑繞地球旋轉,我們可以調整times/cycle速率來使月球在繞地球旋轉一周的情況下,數字化電影播放多少次。
⑥【under user control】:該播放模式只對quicktime(mov)格式的數字化電影適用。對于此種格式的電影來說,選擇該播放模式,authorware將在屏幕上顯示一個默認的播放面板,該面板提供了對電影播放的控制欄、電影暫停、快進、停止播放等控制按鈕。用戶可以拖動這個面板到合適的位置。
請讀者注意:如果播放的數字化電影不是quicktime格式的文件,該選項變為灰色不可用。當在【concurrency】并發選項列表中選擇〖concurrent〗選項時,該選項同樣不可用。
⑦選擇【controller pause】選項,當數字化電影被顯示在播放區域后,authorware并不開始播放電影,只顯示該數字化電影的第一幀,等待最終用戶的響應。例如,在播放quicktime時,使用該選項,當電影被放置到展示窗口后,只顯示電影的第一幀,只有最終用戶單擊quicktime播放控制面板的播放鍵后,authorware才開始播放該電影。
⑧【controller play】:該播放模式是和【controller pause】播放模式相對的,當數字化電影被放置在展示窗口上就開始播放。
(3)【rate】播放速度:對于支持可調整播放速度的數字電影格式,可以通過該選項的正文輸入框來設置數字化電影的播放速度。在該正文輸入框中,可以輸入數值、變量或數值型表達式來調整播放的速度。
如果輸入的速度太快,用戶的系統不能足以逐幀播放數字化電影,authorware將適當跳過一些幀,來達到播放速度的要求。如果在對話框中選擇了【play every frame】選項,則authorware將犧牲播放的速度來播放每一幀。
(4)【play every frame】:播放每一幀:該選項只對內部保存的文件有效。選擇該選項,authorware在播放的過程中,不跳過每一幀,盡量快地播放電影的每一幀。但播放的速度不會超過【rate】速率正文輸入框中設定的播放速度。
(5)【start frame】和【end frame】:起始幀和結束幀:使用這兩個正文輸入框來控制電影播放的范圍。當最初將數字化電影引入authorware中時,這兩個輸入框中顯示的是第一幀和最后一幀所處的幀數。讀者如果想控制數字化電影播放的范圍,可以在這兩個正文輸入框中輸入合適的數值、變量或數值型表達式來限定播放范圍。
注意:
(1) 讀者可以在預覽窗口中來觀察要設定范圍的幀的位置。
(2) 要想讓數字化電影倒放,讀者可以在起始幀正文輸入框中輸入較高的幀數,在結束幀輸入框中輸入較低的幀數。對于director 和mpeg格式的數字化電影是不能倒放的。
【layout】屬性對話框設置(如圖4-38):
圖4-38 【layout】對話框
該對話框主要用來設置在展示窗口上顯示的數字化電影的顯示位置和移動特性:
(1)【movable】移動特性指數字化電影在展示窗口的可移動性,authorware的默認值是〖never〗,不可移動。它包含以下幾個選項:
①【never】:該選項是authorware的默認選項,選擇該選項,數字化電影在展示窗口中不可移動。
②選擇【on screen】選項,數字化電影可以在展示窗口內隨處移動。請讀者注意,整個電影必須在屏幕內。
③選擇【anywhere】選項,數字化電影可以在展示窗口中隨處移動,請讀者注意,數字化電影甚至可以移到屏幕以外。
在這里,希望讀者親自實踐以下,對這些選項會有更深刻的認識。
(2)【position】包含以下選項:
①選擇【no change】選項,數字化電影總是出現在當初放置的位置。除了選擇可移動選項以外,不能移動到其它區域。
②選擇【on screen】選項,圖4-38有如圖4-39的改變,〖initial〗區域中的值是數字化電影在屏幕中的位置。我們可以手工輸入數值,或通過用鼠標拖動對象到合適位置。該區域的值隨對象的移動而改變。
圖4-38 【no change】輸入區域
圖4-39 【on screen】輸入區域
③選擇【on path】選項,對話框改變為圖4-40所示,數字化電影出現在定義了起點和終點的一條直線上的某一點上。
圖4-40 【on path】輸入區域
④選擇【in area】選項,對話框改變為圖4-41所示,數字化電影出現在定義了范圍的四邊形區域中,顯示的位置由〖initial〗區域中的數值決定。
圖4-41 設置區域終點位置
(3)【base】起點和【end】終點的設置參見實例2中【移位】設計按鈕中移動的直線移位方式中直線的設置方法。
(4)【initial】區域中可以輸入變量,來控制顯示對象在直線上的位置。
該選項在交互式多媒體軟件的設計中大量地使用,希望讀者能實際操作嘗試該選項,體會其含義。
下面請讀者來設置該區域的大小和位置。
注意:
我們要移動的對象是引入的數字化電影。
圖4-42 設置目標點
①用鼠標單擊【base】選項,選擇該選項,然后用鼠標點按數字化電影,并拖動它到合適的起始位置,設置區域的初始值。
②用鼠標單擊【end】選項,選擇該選項,然后用鼠標點按數字化電影,并拖動它到合適的終止位置,如圖4-41所示,設置區域的終止值。在展示窗口中出現圖4-41所示的一個具有黑色邊框的方框,該具有黑色邊框的方框即為定義的區域。
在【end】和【base】選項中調整區域的大小和位置。選擇【base】,通過拖動數字化電影可以調整區域的初始值。同理,選擇【end】,拖動數字化電影來調整其終點值。
③用鼠標單擊【iintial】選項,用鼠標拖動數字化電影在矩形方框內定位,設定顯示對象的值。注意該區域中值的變化如圖4-42所示。在該區域中我們還可以通過輸入數值、變量或表達式來控制對象在區域中的顯示位置。
單擊【ok】命令按鈕結束數字化電影對話框中各種屬性的設置。
新聞熱點
疑難解答