分享收集的Web 3D學習資源

2022-02-04 19:10:43 字數 3972 閱讀 3987

wonder技術

淺墨的遊戲程式設計

作者寫得非常詳細,推薦~

zwqxin

比較老的部落格,作者寫得不錯。

our machinery

原bitsquid引擎的開發者的新部落格,分享了很多引擎設計、data oriented的乾貨,非常推薦!

webgpu學習

webgpu是w3c維護的新一代web圖形api,對應dx12、vulkan、metal。該系列是我寫的webgpu實戰教程,如果你想從0學習webgpu,了解現代圖形api的技術要點,歡迎你閱讀它~

webgl入門

webgl的初級入門教程。

learn opengl

作者分成乙個個專題,講得非常仔細,讀完後能夠直接上手實戰,推薦~

webgl samples

webgl1的案例

webgl 2 examples

webgl2的案例

《webgl程式設計指南》

非常易懂的實戰類書籍,讓讀者能零基礎學習和應用webgl。

我就是從這本書開始學習webgl的:

1.我找到了《webgl程式設計指南》這本書,把大部分demo實現了一遍;

2.再次第二遍實現demo,提煉3d引擎的雛形;

3.用提煉的引擎實現了乙個「自由瀏覽場景」的demo。

豆瓣書評

《html5 canvas核心技術:圖形、動畫與遊戲開發》

本書不僅全面講解了canvas的api和如何利用canvas進行圖形繪製、動畫製作、物理效果模擬、碰撞檢測、遊戲開發、移動應用開發,還包括大量例項,可操作性極強。

豆瓣書評

購買位址

《opengl超級寶典》

本書詳細介紹了opengl 2.0的渲染流水線的各個階段(如深度測試等),通俗易懂,適合入門。

雖然本書介紹opengl 2.0,但因為webgl 1對應opengl 2.0,所以本書的知識點也可以套用在webgl 1中。

豆瓣書評

《doom啟示錄》

本書講述了卡馬克創業的故事,非常有代入感。讀者可以看下國外黑客是如何憑一己之力寫出3d引擎的。推薦大家閱讀~

豆瓣書評

《3d數學基礎 圖形與遊戲開發》

本書講解矩陣、四元數等跟引擎開發非常相關的數學知識。

建議讀者先大概瀏覽一遍,有乙個印象,然後在實際開發引擎的過程中再查詢該書的對應章節。

豆瓣書評

《計算幾何--演算法與應用(第三版)》

本書是關於幾何相關的演算法和應用。書中有部分演算法(如求最小包圍圓等)在3d引擎和工具開發中會被使用。

建議讀者將其當成工具書,在開發中如果遇到相應問題,可查詢該書對應章節。

豆瓣書評

座標系變換

opengl座標變換及其數學原理,兩種攝像機互動模型(附源程式)

[opengl es 03]3d變換:模型,檢視,投影與viewport

齊次座標系入門級思考

《遊戲程式設計模式》

這本書充滿了實踐經驗,討論得非常詳細,有指導意義。

「狀態模式」一章討論了並行狀態機、層次狀態機、下推自動機。

「服務定位器」一章對我來說是第一次接觸到這個模式。

「資料位置」一章是優化的重要和有用的方法,它強調了快取命中的問題,其實就是在講data oriented相關的內容。

「空間分割」這一章也很重要,可以使用該技術來組織場景物件。

豆瓣書評

a data-oriented programming

paradigm for optimal performance

culling the battlefield: data oriented design in practice

adventures in data-oriented design – part 1: mesh data

《data-oriented design》

building a data-oriented entity system (part 1)

building a data-oriented entity system (part 2: components)

building a data-oriented entity system (part 3: the transform component)

building a data-oriented entity system (part 4: entity resources)

《守望先鋒》架構設計與網路同步 -- gdc2017 精品分享實錄

**《守望先鋒》中的 ecs 構架

js 函式式程式設計指南

這本書作為我學習函式式程式設計的第一本書,非常容易上手,作者講得很簡單易懂,推薦~

awesome fp js

收集了函式式程式設計相關的資料。

《遊戲引擎架構》

本書全方位講解了3d引擎的設計以及一些重要的實現、優化細節,是一本好書!

本書的5、6、7、13、14章節對我開發的wonder.js引擎的改進很有幫助,其中第14章有部分內容還討論了data oriented相關的設計。

豆瓣書評

本書相當於webgl的gems書,每個章節都是乙個專題,介紹了瀏覽器是怎麼實現webgl的、一些基於webgl的實現的圖形渲染技術、現有的開源引擎(如babylonjs)的設計和優化等。

這是一本非常好的書,對深入webgl、學習其他開源引擎的設計和優化、移動端webgl開發和優化都很有幫助!

豆瓣書評

本書相當於opengl的gems書了,每個章節都是乙個專題,不僅包括opengl,也包括了webgl方面的主題,是一本高階的書籍。

書中webgl方面的專題、效能專題以及移動方面的專題(比如介紹了tile-based架構)都是很有用的。

書中最後還給出了opengl es2.0的渲染管線圖。

豆瓣書評

本書講得很全,覆蓋了渲染的各個方面。不過不夠深入,偏理論。

相關參考:

【《real-time rendering 3rd》 提煉總結】(一) 全書知識點總覽

豆瓣書評

《focus on 3d terrain programming》

這本書比較老了,不過挺容易上手實戰的。我參考它實現了height map地形和分層地形。

豆瓣書評

分享我收集的引擎、圖形學、webgl方面的電子資料

我在2011-2023年收集的經典書和心得

Web 3D引擎閒談

thingjs 3d城市應用 主要是城市 工業領域 有很多酷炫的效果,有的也醜 cbd大樓很酷炫 不開源,需付費 babylon.js 巴比倫,是微軟開發和維護的web端3d引擎 微軟官方的demo 很酷炫,有細節 城堡很真實,但水流有點假 yeti cnbabylon.com demos yeti...

發布支援VR的Web3D內容

基於webgl的web3d也可以有vr體驗,只要可以在web端應用中做到以下兩點即可 針對上述兩點,在不同的web內容的實現中有不同的方法,主要分為以下三種 對於此類web內容,使用webvr.js的庫來實現。webvr.js是由mozila和google聯合開發的乙個針對web端的vr庫,目前還正...

web3d技術實現虛擬購物程式

程式演示見文末。1 這是什麼?這是個產品展示類應用,名字叫 宅男房間 利用webgl技術在網頁上呈現三維互動內容,展示了乙個迷戀二次元的宅男的房間,你可以旋轉視角 房間裡的任何角落。2 有哪些功能?3 這個東西的意義?vr購物。實際是vr購物應用的原型設計。通過呈現乙個真實的生活場景,把商品自然地融...