原创 WebGL之旅(二)向shader中傳遞數據(attribute和uniform)

一 繪製鼠標點擊過的位置 當鼠標點擊canvas時,記錄點擊位置,然後將所有點擊過的位置都繪製一個紅點。 <!DOCTYPE html> <html lang="en"> <head> <meta charset="utf

原创 gzip壓縮引起的熱更新bug

就在昨天,一切都是那麼的尋常,就是普通得打了一次熱更新包,然後上傳到服務器,然後… 啊,什麼情況呀,七百多兆呀,整個資源也才這麼七百多兆,什麼鬼~~~,冷靜,一定要保持冷靜。 查找過程 project.minifest 推斷

原创 Cocos Creator基於熱更新的分包方案

cocos 的熱更新是基於對比本來文件列表和遠程文件列表的md5實現的,如果有多個遠程資源庫,就可以拿來作爲分包方案。大概流程是這樣的: 一 確定分包策略 首先是,策劃要根據一定的策略,將動態加載的資源分成幾個包。比如遊戲等級,前

原创 WebGL之旅(三)VBO和多種圖形繪製

通過gl.vertexAttribXX和gl.uniformXX函數,一次只能向shader中傳遞一個變量,要一次性向shader中傳遞多個數據就要用到頂點緩衝區對象(VBO)。 一 VBO VBO使用步驟: 創建緩衝區對象(g

原创 WebGL之旅(四)簡單變換

變換又叫仿射變換,包括平移,縮放,旋轉。 一 變換前 首先,我們繪製一個三角形,後面對齊進行變換,代碼: /** * 變換前 * [email protected] * */ // 頂點着色器源碼 var vertexSha

原创 手遊搖桿(三)跟隨式搖桿

前一篇博客實現的固定式搖桿,在市面上很多遊戲中都有應用,但在最後也提出了一個不是太好的地方,就是轉向需要移動的位置比較遠,操作比較累,爲了解決這個問題,出現了跟隨式搖桿。 一 什麼是跟隨式搖桿 所謂跟隨式搖桿,即: 當搖桿中心在

原创 WebGL之旅(六)動畫

動畫原理 已經知道如何繪製一個三角形了,利用變換舉證可以讓圖形產生相應的變換。 現在要做的是,繪製一個三角色,不斷的更新旋轉矩陣的角度,然後重繪就會產生旋轉動畫。 實現 /** * 旋轉動畫 * [email protected]

原创 WebGL之旅(五)組合變換

複合變換,即對一個圖形進行多次變換。 一 組合原理 比如,對圖像g進行一次平移,然後進行一次縮放,求最終的得到圖像g。 那麼: 平移後的座標t = 平移矩陣 x 原始座標g 縮放後的G = 縮放矩陣 x 平移後的座標t