《Web動畫週報》第五期:當心駕駛

Web 動畫週報,一週一刊,每週一發布。讓咱們來一塊兒聊聊 Web 動畫,和它們背後的故事。ios

本期亮點:Jon Kantner 爲咱們帶來了他最新的 Three.js 小遊戲《高速公路競賽》,控制本身的汽車,一塊兒在高速公路上飛馳吧!注意不要撞車哦。canvas

週報將 Web 動畫大體分爲三類:CSS 動畫、SVG 動畫 和 WebGL/Canvas 動畫。全部的動畫將按類別展現,方便讀者有針對性的學習。post

CSS 動畫

1. 《旋轉的圓圈》 做者:Miracle Onyenma

這是一個純 CSS 動畫,並且做者沒有使用任何的 CSS 3D 屬性,靠着 2D transform 完成了一個帶有三維錯覺的動畫。影子的巧妙使用很大程度上加強了 3D 的感受。

2. 《相位》 做者:Adam Dipinto

一個很適合用來看成加載動畫的 CSS 3D 動畫。圓圈其實就是 border 畫的,在動的屬性是 z 方向的位移,經過給每一個圓圈設置不一樣的 animation-delay 實現相似彈簧的動畫效果。

3. 《切換預覽動畫》 做者:Mariusz Dabrowski

一個很是精緻的切換動畫,動畫乾淨整潔,沒有拖泥帶水, 還適配了移動端。控制邏輯是用 JS 寫的,使用了一個叫作 GSAP 的動畫庫。GSAP 應該是目前在實際業務中用得最多的動畫庫了,不少寫動畫的大佬都推薦過,有興趣的有同窗能夠去了解一下。這個動畫庫最大的特色是 API 設計很是人性化,好學易懂,但功能又很是強大。GSAP 這個庫有目前有三我的在全職維護,因此不用擔憂會忽然中止更新或者死掉,可是正由於是全職維護的緣由,有些功能是須要收費的,不過免費版本足夠知足通常的平常需求。

4. 《流星》 做者:Yusuke Nakaya

這是一個純 CSS 動畫,爲元素的巧妙使用讓每一顆流星都只使用了一個 <div> 元素。做者還使用了 filter: drop-shadow() 這個 CSS 濾鏡讓流星看起來有在發光的感受。 filter: drop-shadow() 的做用跟 box-shadow 很類似:都是爲元素添加陰影。可是 filter: drop-shadow() 做爲 CSS 濾鏡效果的一種,相比於 box-shadow 的好處就是在這個濾鏡下的全部元素都會被添加上陰影,這樣咱們就不須要像 box-shadow 那樣一個一個的去加了。

5. 《CSS太棒啦》 做者:Gayane

這個動畫的精髓在於 background-clip: text 這個屬性的使用。在設置這個屬性以前,動畫長這個樣子:
因此這個屬性的做用就是讓背景從字裏面透出來,而後把除了字以外的背景遮蓋住。在沒有這個屬性以前咱們利用 clip-path 也能夠製做出一樣的效果,不過會複雜不少。而這個屬性就是爲這類動畫而生的,因此使用起來很簡便。

6. 《殭屍射擊遊戲》 做者:Takane Ichinose

一個基於 React 的 CSS 射擊小遊戲。

SVG 動畫

1. 《流體下載動畫》 做者:Aaron Iker

小編原本還覺得這個動畫裏的波浪使用了比較複雜的 morphSVG 技術,一看代碼才發現原來只用了 x 和 y 方向的位移。波浪圖片真正的寬度比圓形區域要寬,可是咱們只把圓形之內的區域設置爲可見區域,這樣咱們在水平方向拉動波浪圖片時就會有波浪在翻滾的錯覺。

2. 《多倫多天際線》 做者:Jaymie Rosen

一個邏輯比較複雜的 SVG 動畫, 用到了 GSAP 動畫庫,還用到了 SVG 路徑動畫。

WebGL / Canvas 動畫

1. 《三維投影》 做者:Arturo Morán

這是一個在 canvas 2d 環境中製做的 3D 視覺動畫。做者利用投影矩陣在 2D 平面上繪製出了 3D 物體。其實全部的 3D 庫 (好比Three.js) 都使用到了投影矩陣來構築三維世界,只不過都被封裝過了因此使用者感覺不到。在這個動畫中,做者在 canvas 中實現了一個本身的投影矩陣。

2. 《火焰》 做者:Alain

這是一個使用了 m3.js 的 WebGL 動畫。原本只是一張靜態圖片,做者利用 fragment shader 將像素點進行位移,從而完成的火焰效果。

3. 《高速公路競賽》 做者:Jon Kantner

這是一個使用了 Three.js 的 WebGL 動畫。代碼很整潔,若是你已經有一點 Three.js 基礎,想學習如何用 Three.js 寫遊戲的話,仿寫這個動畫是一個不錯的入門選擇。

這一期的 Web 動畫週報就到這裏啦。若是你對週報有什麼意見或者建議,歡迎在下方留言。你也能夠向週報投稿,投稿的方式是把本身的動畫的 Codepen 連接發送到週報下面的評論裏便可。Web 動畫週報,一週一刊,每週一發布,咱們下週見!學習

往期週報

《Web動畫週報》第四期:密室逃脫動畫

《Web動畫週報》第三期:死亡之舞spa

《Web動畫週報》第二期:欺詐大師與寶石工匠設計

更多往期週報...3d

相關文章
相關標籤/搜索