選單

threejs粒子動畫為背景製作炫酷專題頁面

之前做網站的時候一直驚歎老外的網頁有一個可以動的粒子背景,也一直找不到合適的方法來做。學了threejs之後,終於可以大展身手了。效仿的網址連結是:http://dnacapital。com/

網站效果:

其實之前文章《threejs將動態模型轉化為動態粒子效果》中也提到過這個製作方法。今天的文章主要是GLSL材質的除錯。

1。 準備好相應的模型

因為要高度效仿原網站,所以從network裡下載了原網站的模型,在https://gltf-viewer。donmccurdy。com/這個預覽模型網站上看到的效果:

threejs粒子動畫為背景製作炫酷專題頁面

2。 載入模型的程式碼:

threejs粒子動畫為背景製作炫酷專題頁面

3。  材質部分定義了3個顏色值:

threejs粒子動畫為背景製作炫酷專題頁面

4。 獲取模型中所有的點加到場景中:

5。 postprocessing的效果用了官網的bloom這個效果,可以讓底部虛化

引入4個js庫

6。  在自定義PASS中用了chromatic-aberration的效果,可以讓邊緣虛化。網址為https://github。com/spite/Wagner/blob/master/fragment-shaders/chromatic-aberration-fs。glsl

threejs粒子動畫為背景製作炫酷專題頁面

7。 調整材質的引數

threejs粒子動畫為背景製作炫酷專題頁面

8。 對應的vertex。glsl檔案:

9。 對應的片元著色器程式碼:

10。 渲染:

threejs粒子動畫為背景製作炫酷專題頁面

最終效果:

總結:

有了這個效果,可以做很多炫酷粒子動畫,對模型進行簡單處理,抽出所有的點,做一些動畫。另外這個效果也可以不用模型,直接用程式碼寫,將一個平面透過球型方式扭曲也可以製作同樣的效果。對GLSL的材質控制有了更深的理解。

關於作者

做一隻爬的最久的烏龜,保持學習保持好奇,即使慢一點,遇到一點困難,只要最後能到達終點,又有什麼關係呢。

畢竟人生沒有白走的路,每一步都算數。

threejs粒子動畫為背景製作炫酷專題頁面