官术网_书友最值得收藏!

2.3 造型的動畫

吃飽喝足,呱呱喵的心情好了一些。

“感謝你的西瓜,盡管這西瓜不是彩虹色的?!?/p>

喵喵呱想了半天,想象不出彩虹色的西瓜什么樣,但還是很有禮貌地回答:“不用謝?!?/p>

呱呱喵:“為了表示我的謝意,我給你唱首歌吧?”

說完也不等喵喵呱同意,張嘴就唱了起來:“許多小動物,在唱著歌~~喵嗚,喵嗚~~真快樂!”

喵喵呱趕緊捂住呱呱喵的嘴:“你別唱了,我聽著你喵嗚就鬧心?!?/p>

呱呱喵不滿意了:“那你來唱一個。”

喵喵呱很為難,一直都覺得自己呱呱的叫聲不好聽,沒練習過唱歌。

“我不會唱歌?!边鬟鬟商拱住?/p>

“那你出個別的節目。”呱呱喵這次很好說話。

“朗誦吧!”喵喵呱想了想,它覺得貓的朗誦挺好。然后拿出了第1章的朗誦作品放給呱呱喵看。

沒想到呱呱喵一蹦三尺高:“你這是假唱!不對,還不如假唱呢?!?/p>

喵喵呱很茫然:“我這是朗誦。”

呱呱喵很生氣:“人家假唱,起碼嘴還在動,你這啥都沒動?!?/p>

讓嘴動起來這件事情其實不難做,但你要明白“動”是怎么回事。人的眼睛看到的影像會暫留一剎那,也就是說,實際圖像消失之后,其影像還會暫時停留在眼前,這叫視覺暫留。利用這一原理,在一幅畫的影像還沒消失前,播放下一幅畫的影像,就會給人帶來一種“動”的感覺,如圖2-30所示。

圖2-30

喵喵呱:“這個一剎那是多久呢?”

通常來說,人看到的物體形象在1/24秒的時間內不會消失,所以每秒播放24張以上的連續畫面,看起來就是連續的動作。

喵喵呱驚呼:“天哪!也就是說,我起碼要為貓的嘴巴繪制24張畫面才有動的感覺嗎?”

不是這樣的,雖然每秒24張畫面號稱全動畫,但實際播放卻并不是非常流暢。想要看到流暢的動作,每秒起碼需要25~30張畫面。而要想讓所有的人都感覺不到卡頓現象,那就需要每秒60張畫面。在Scratch 2.0中,以每秒30張畫面來展示動畫效果,而在Scratch 3.0中,這個數字變成了60。

喵喵呱:“我打算放棄了……”

不要被數據嚇倒,動畫片的制作通常采用“一拍一”、“一拍二”、“一拍三”這三種常見方式。解釋一下,就是每一張畫面拍幾次,換算一下就是一秒24張畫面、12張畫面或者8張畫面。

喵喵呱:“那也不少!”

平均每秒8張,那只是平均數字,這個數字根據要表現的內容是不斷變化的。例如,通常的動作是8張,但激烈的動作可能是24張,靜止畫面只要一張就可以。如果是有關對話的畫面,一般只要畫嘴的小、中、大三個造型,也就是三張畫面就可以。

圖2-31

喵喵呱:“如果是這樣,只需要張嘴和閉嘴兩個造型就可以吧?

要求不高的話確實沒有問題,而且在Scratch中延遲的時間一般控制在0.1秒就可以?,F在打開第1章中貓的朗誦文件,切換到“造型”標簽,你會發現這只貓本來就有兩個造型,現在刪掉一個。在造型縮略圖上單擊鼠標右鍵,選擇刪除,或者單擊縮略圖右上角的按鈕都可以。然后復制第一個造型。

使用選擇工具選中小貓,會發現只能選中小貓的整個頭部。這對單獨修改嘴的造型造成了不便。仔細觀察發現,畫布上方的拆散按鈕是可用的,說明這種情況是因為小貓整個頭部被合成了一個分組,我們只需要單擊拆散按鈕把分組打散,小貓的嘴部造型就被單獨分離出來了,如圖2-32所示。

圖2-32

喵喵呱:“我單擊了一次后完全沒有效果!”

只要拆散按鈕是可用的,就可以一直單擊,直到你想要的效果出現?,F在把畫面放大一些,使用修改工具細微調整一下嘴巴的大小,就像圖2-33所示的畫面這樣。

圖2-33

調整滿意之后,連續復制兩次,復制出第三、四個造型?,F在小貓有四個造型,其中造型2~造型4都是一樣的。觀察發現下,嘴巴的大、中、小三個造型已經有兩個了,也就是大、中造型,現在來調整第三個,也就是小的造型。刪掉嘴巴,重新畫一條曲線就可以,如圖2-34所示。

圖2-34

喵喵呱:“我很好奇,說好了需要三個造型,你為什么鼓搗出四個來?

第四個造型其實是一個制作技巧,現在口型動畫是以“大、中、小”的順序來切換的,如果沒有第四個造型,動畫會以“大、中、小、大……”的順序循環,出現了“小、大”的銜接跳轉,影響了動畫的效果。

喵喵呱:“有點‘燒腦’,我一會兒刪掉第四個造型試試?!?/p>

挺好,實踐出真知?,F在造型已經繪制好了,需要連續切換才能播放出運動的感覺。造型切換的時間可以使用“等待……秒”積木把控,那么你會怎么寫小貓的腳本呢?

喵喵呱:“簡單!按照圖2-35所示的做就可以?!?/p>

圖2-35

你不覺得這樣寫有問題嗎?

喵喵呱:“我測試過的,很流暢?!?/p>

好吧!這樣寫雖然沒有問題。但你可能還不知道有“重復執行”積木。對編程來說,執行命令有順序執行、循環執行、條件執行和分支執行等多種方式。之前所做的程序都是以順序執行的方式來編寫的。簡單地說,1、2、3、4這種逐一執行命令積木的方式,但是這次出現了1、2、1、2、1、2這樣執行的情況,這時使用重復執行1、2的方式可以大大減輕工作量。

喵喵呱:“這個積木我找到了,就在‘控制’標簽下,它是一個半包圍結構的積木,是不是把需要重復執行的積木堆砌到它的包圍圈里就可以?”

沒錯,其實“重復執行”相關的積木有三個,分別是重復執行、重復執行……次、重復執行直到……,如圖2-36所示?!爸貜蛨绦小睍恢眻绦邢氯?;“重復執行……次”是給重復執行限定了一個次數,重復到設置的次數之后,繼續往下順序執行。目前,你能弄明白前兩個的用法就可以。至于第三個,以后用到的時候再說。

圖2-36

喵喵呱:“哎!還賣關子?”

我們的腳本可以這樣寫(見圖2-37)。如果說只讓小貓說2秒的話,那就使用計次的重復執行。

喵喵呱:我算算,一次0.1秒,2秒就是20次。

數學還挺好,最后的腳本和效果應該是圖2-37所示的樣子。

圖2-37

動手做

1.請制作小貓一邊眨眼,一邊說話的動畫效果。

2.使用造型相關功能制作任一角色,從舞臺左面逐漸移動到舞臺右面的動畫。

問問你

這種使用造型逐一變化來做動畫的方法叫作逐幀動畫。從道理上說,任何動畫效果都是逐幀動畫制作的。就你目前的認知來說,你認為這種動畫制作方式分別有什么優點和缺點呢?

主站蜘蛛池模板: 河南省| 商城县| 大化| 花莲市| 竹山县| 成都市| 中超| 繁峙县| 江北区| 巫山县| 宁乡县| 益阳市| 布拖县| 托克托县| 新民市| 思南县| 富平县| 隆子县| 普定县| 东至县| 平遥县| 昭觉县| 盖州市| 大足县| 昭平县| 策勒县| 和林格尔县| 揭西县| 阿克苏市| 武邑县| 富锦市| 柘城县| 北碚区| 贵溪市| 咸丰县| 蕉岭县| 依兰县| 河南省| 利川市| 寿光市| 兴业县|