竹内纱里奈和大战黑人_欧美成人黄色小视频_91福利影视_欧美在线观看视频网站_h色网站免费观看_97综合

極客小將

您現在的位置是:首頁 » scratch編程資訊

資訊內容

Scratch少兒編程第75講-海洋世界-進階版

極客小將2020-11-05-
進階教程不光是把程序做得復雜,更多時候是把程序的細節處理好,今天CC哥就把海洋世界之前做過的一個最初級的程序,配上一些細節的完善,讓大家再看看這個游戲跟初級課程做的游戲會有什么區別。 先看看游戲視頻: 視頻沒看清楚的地方,下面一步步介紹。

進階教程不光是把程序做得復雜,更多時候是把程序的細節處理好,今天CC哥就把海洋世界之前做過的一個最初級的程序,配上一些細節的完善,讓大家再看看這個游戲跟初級課程做的游戲會有什么區別。

先看看游戲視頻:

視頻沒看清楚的地方,下面一步步介紹。

氣泡的優化思路

1:首先CC哥第一眼就覺得之前的游戲里最大的問題就是氣泡不會動。

upload/article/images/2020-11-05/6ff3563643800839f0635227ecdf16df.jpg

因為這只是個背景圖片,氣泡當然不會動了,那我們想把它變成會動的氣泡,那不就生動了?

如何變成會動的氣泡呢?CC哥開始思考相應的物理知識:

1:氣泡在浮起的時候,隨著壓強的降低,是不斷變大的。

2:因為變大,受到的浮力也不斷增大,所以氣泡是不斷加速上浮的,而且加速度越來越快的。

3:因為受到各種外部環境影響,氣泡是不可能直線上浮的,是在上浮過程中左右晃動的。

有了這些物理知識,那么CC哥要做的氣泡程序就必須符合這個條件才行。

看到這里大家明白沒有?剛才你看到的游戲視頻里的氣泡可不是什么動圖和造型切換,而是CC哥用編程做出來的。

https://cdn.china-scratch.com/timg/200102/105245C40-1.gif

通過這個動圖大家觀察出來氣泡怎么產生的了嗎?


氣泡的程序設計

首先這個CC哥是用克隆體來做的:

1:第一步要設計好氣泡的樣子和冒出的位置

upload/article/images/2020-11-05/45e842bde68fede38a9f825eb754952d.jpg

upload/article/images/2020-11-05/e9399709f1734c017b0cdb91c94cc0a2.jpg

氣泡就是一個綠色的小點。CC哥構想有海底冒出三個氣泡的位置,直接copy了三個氣泡的角色,這樣可以簡化編程。這三個角色的代碼都是一模一樣的。

2:不斷克隆自己

upload/article/images/2020-11-05/78b078303a60072a23d90c22e86f47dd.jpg

克隆的時間間隔,CC哥用了講過的隨機數技巧,平常的隨機數只能取整數,但是CC哥想要的隨機的時間間隔很短,大概在0.02秒和0.06秒之間,所以我們只要把取得隨機數除以50,就可以得到小數的隨機數。

3:氣泡上升過程中的變化:

upload/article/images/2020-11-05/93f7e779da4d43a0d9a2e1dba774ccff.jpg

這段代碼主要注重兩部分:

a:?上升加速

上升加速有兩種方法,一種是用加法,一種是用乘法。區別就是固定加速度還是變加速度。比如我們平常模擬重力效果時就用加法,我們會把上升速度每次循環時固定增加1或-1,這就是固定加速度。而乘法是我們每次把加速度的值每次循環乘以一個系數,那么這種變化就會產生累積,會越來越大。比如:1.1 * 1.1 * 1.1 * 1.1 * 1.1 * 1.1 * 1.1 = 1.95。這就是炒股里說的復利,每年只賺10%,七年下來就賺翻翻了。https://cdn.china-scratch.com/Public/Home/images/grey.gif?

另外考慮多一個細節,就是每次氣泡冒出來的大小是不固定的,有的出來小些,有的大些。

upload/article/images/2020-11-05/22a10ca4caa909f71b59908a8c075762.jpg

為什么這么考慮?是想讓氣泡在上升的過程中有交錯的效果,比如大的氣泡升的快,就會超過小的氣泡,視覺效果就更真實。所以初始的上升速度是跟氣泡的大小有關系的。

b: 水平晃動

upload/article/images/2020-11-05/c9b0a56497befa5e4e81fc412b0f16cb.jpg

upload/article/images/2020-11-05/0eba098bc1b0ba23668fe71c3fc9499c.jpg

upload/article/images/2020-11-05/ca9a9f2e8e08d3861bc460bac8311b2e.jpg

跟晃動部分相關的代碼:

1:晃動只要處理X軸的運動效果就可以。

2:用正弦函數就可以得到一個-1~1之間的變換值。再配上Y軸的運動,就會產生螺旋上升的效果。

3:設置晃動變量增加的數值,是為了控制氣泡群的寬度,晃動增加的越快,氣泡群的直徑就越窄。

4:在每次循環的運動過程中用了隨機數來變換振幅,這樣就可以造成上升過程中的隨機運動效果,而不是一個標準的螺旋上升曲線。

有沒有覺得CC哥思考得還是很周全的?程序不復雜,但是效果很好。https://cdn.china-scratch.com/Public/Home/images/grey.gif這一直是CC哥追求的,越簡單越完美。https://cdn.china-scratch.com/Public/Home/images/grey.gifhttps://cdn.china-scratch.com/Public/Home/images/grey.gifhttps://cdn.china-scratch.com/Public/Home/images/grey.gif

順便優化一下鯊魚

這一講主要是講氣泡的,但是CC哥在做完了氣泡之后,就停不下來,還想把鯊魚優化一下。

https://cdn.china-scratch.com/timg/200102/1052521448-15.gif

這是老的被鯊魚吃掉效果,是不是簡陋的想哭呀。https://cdn.china-scratch.com/Public/Home/images/grey.gif

upload/article/images/2020-11-05/67103e5559788a2508c0fb9bdc2a86e7.jpg

CC哥看到造型里還有一個張嘴的造型,這不正好是吃魚的動作嘛,趕緊利用以前的學習技巧,把這個改善一下。

https://cdn.china-scratch.com/timg/200102/1052532517-18.gif

這里面也有細節要處理:

1:鯊魚有兩種,一種是固定巡航的鯊魚,沿著固定路徑在走,那么如果碰到小魚的時候是背面碰到的,那么鯊魚要轉身吃掉小魚。

2:在吞吃小魚的時候,是嘴部吞的,嘴部并不是鯊魚的中心位置,所以程序處理要退20步。

3:要配音https://cdn.china-scratch.com/Public/Home/images/grey.gif

upload/article/images/2020-11-05/35e81346816eed1590a6c78222620635.jpg

過程控制

以前處理程序流暢,結束的時候就是一個停止全部腳本。

https://cdn.china-scratch.com/timg/200102/10525W306-21.jpg

其實配合好消息命令,還有這些停止命令,就可以很有效的控制游戲的進程。CC哥就用這些命令進行游戲的進程控制,給小魚附加上生命值,變成了一個完整的游戲。

這次的進階課程,并不是要強調多高深的編程技巧,而是強調編程設計中如何對細節進行思考,一些小的技巧用在細節的處理上面,就會為程序增色不少。所以學習過程中,最重要的是活學活用,而不是天天追求難點。


·END·

跟我學Scratch編程

不用花錢成為Scratch高手

預約試聽課

已有385人預約都是免費的,你也試試吧...

主站蜘蛛池模板: 99re视频在线 | 久久国产精品免费视频 | 精品国产一区二区三区免费 | 色婷婷综合成人 | 成人免费一区 | 男人操女人免费视频 | 亚洲精品天堂 | 中文字幕一区二区三区在线视频 | 国产不卡一二三区 | av另类| 欧美日韩一区二区三区视频 | 在线免费看黄网站 | 99精品久久久国产一区二区三 | 最新中文字幕视频在线 | 在线播放一区二区三区 | 亚洲成人一二三 | 欧美成人第一页 | 亚洲乱码国产乱码精品精 | 热久久久久久 | 韩国精品一区 | 久久久精品一区二区三区 | 中文字幕亚洲在线 | 91天天综合| 中文字幕精品一区久久久久 | 日韩中文字幕在线视频 | 成人午夜影院 | 日产精品久久久久久久性色 | 九九热视频在线 | 在线观看av的网站 | 精一区二区 | 成人在线免费网站 | 欧美黄色大片在线观看 | 午夜激情视频在线观看 | 欧美在线视频二区 | 国产在线播放精品 | 国内精品国产三级国产在线专 | 亚洲成人免费观看 | 国产又黄又爽又刺激的视频 | 久久久精品在线 | 国产精品免费一区二区三区四区 | 国产亚洲二区 |