嗨,雖然說第一篇的目的是簡單了解一下Matter.js,但在那之前我要偷渡一下自我介紹XD
這是筆者第一次參加鐵人賽,第一篇我們先稍微聊聊筆者跟這次的題目。
筆者平常工作以後端為主,前端多是興趣,有些寫法可能不那麼標準,望大家見諒,筆者本人也有在經營Medium,主要會分享一些技術文與桌遊規則翻譯,鐵人賽文章也會搬運至Medium,有在用Medium的朋友覺得喜歡筆者的文章的話可以Follow支持。
這次題目的選題緣由是來自於筆者想要模擬一個彈珠台的動畫。
經過一些探索後,最後決定使用Matter.js來實作。
如果大家並不知道Matter.js是什麼,我們先來看看他能做到什麼。
點擊這個連結 → https://brm.io/matter-js/
看看圖中的畫面們(他有多個場景,會逐一切換)!你可以用你的滑鼠和那些圖形互動!
先玩玩看他,如果你對它產生了興趣,那我邀請你和我一起來探索他。
沒錯,Matter.js是一個主要處理碰撞的前端2D函式庫,開源且採用MIT授權。
筆者也是第一次接觸這個函式庫,會以帶讀API文件的方式走完這30天,所以可能順序有時看起來不那麼順暢,這要請大家多包涵。途中會不定時的用該次閱讀的內容,帶一些實際可以看到的例子──對吧?前端還是要看的到才酷吧!
筆者不會特別提到js該怎麼寫(所以讀者可能要對js有基本了解,或是讀者看到不懂得要去查查),會專注於他的函式,也就是碰撞的運作方式,如果途中有一些會讓畫面更好的其他函式庫也有可能交雜著用(如pixi.js),介紹就看筆者當下的心力,每天內容的閱讀與實作時間推薦為 10 - 30 分鐘。
相信從第一篇的介紹文就可以看出筆者是個相當囉嗦的人,如果你願意和這個囉嗦的人一起來瞧瞧Matter.js,那就請多多指教啦,我們從明天開始我們的第一步!
※筆者撰寫系列文當下的 Matter.js 的版本為 0.17.1版本