Wonder暫停開(kāi)發(fā),開(kāi)始寫書
公告
大家好,我們決定暫時(shí)停止開(kāi)發(fā)Wonder,但會(huì)繼續(xù)維護(hù)當(dāng)前的Wonder版本(如繼續(xù)維護(hù)官網(wǎng)、在線編輯器、QQ群等)。
我們當(dāng)前的主要任務(wù)是 寫書:基于Wonder 1.0版本的開(kāi)發(fā)經(jīng)驗(yàn),寫一本 “開(kāi)發(fā)3D引擎”的實(shí)戰(zhàn)類型的書,歡迎大家關(guān)注~
寫書計(jì)劃
之前我寫了《用函數(shù)式編程,從0開(kāi)發(fā)3D引擎和編輯器》系列中的前3篇文章,主要從 思維 層面來(lái)討論設(shè)計(jì)和開(kāi)發(fā)過(guò)程。
不過(guò)我認(rèn)為這樣的效果并不好,因?yàn)榇蟛糠肿x者都沒(méi)有自己動(dòng)手寫過(guò)3D引擎,對(duì)他們來(lái)說(shuō),思維層面的討論太過(guò)空泛。
因此我決定,本書從 實(shí)戰(zhàn) 層面來(lái)討論,讓讀者能真正跟著本書,一步一步地寫出3D引擎,真正體驗(yàn)到其中的快樂(lè)和成就感。
此外,我決定把書的預(yù)覽稿作為一個(gè)系列文章,發(fā)到網(wǎng)上,供讀者先行預(yù)覽,歡迎給我反饋意見(jiàn)!
系列文章:
從0開(kāi)發(fā)3D引擎
暫定書名
《3D編程旅程-從0開(kāi)發(fā)3D引擎》
我準(zhǔn)備在“3D編程”的主題上寫一系列的書,該系列暫名為“3D編程旅程”。后續(xù)可能會(huì)有《3D編程旅程-應(yīng)用》、《3D編程旅程-模式》、《3D編程旅程-測(cè)試》等書。
主題
本書使用函數(shù)式編程范式,從0開(kāi)始,通過(guò)一行一行的代碼,寫出了 簡(jiǎn)易的、完全可運(yùn)行的 3D引擎。
在線預(yù)覽和反饋
讀者反饋QQ群:
106047770
技術(shù)棧
- 使用Reasonml作為編程語(yǔ)言
- 使用WebGL 1作為底層api
篇幅
本書保持精簡(jiǎn),專注在實(shí)現(xiàn)最小功能上,因此使用較少的篇幅。
策略
- 盡量多章節(jié),每個(gè)章節(jié)內(nèi)容盡可能獨(dú)立和精簡(jiǎn),減少讀者負(fù)擔(dān)
重點(diǎn)
-
設(shè)計(jì)
3D編程比較復(fù)雜,要讓各個(gè)部分統(tǒng)一協(xié)調(diào)地工作,還要盡量地提高性能、增強(qiáng)擴(kuò)展性。
本書會(huì)展示很多設(shè)計(jì)層面的思考,仔細(xì)地設(shè)計(jì)架構(gòu),不斷地重構(gòu),提高代碼質(zhì)量。 -
實(shí)現(xiàn)
本書旨在讓讀者以最小的成本,快速實(shí)現(xiàn)一個(gè)簡(jiǎn)易的3D引擎。因此,本書不討論 測(cè)試、工程化 等內(nèi)容。
特色
1.完全從0開(kāi)始,強(qiáng)調(diào)實(shí)戰(zhàn)
2.保持精簡(jiǎn),只實(shí)現(xiàn)最小功能,重點(diǎn)強(qiáng)調(diào)架構(gòu)、擴(kuò)展
3.完全、徹底地使用函數(shù)式編程
現(xiàn)在3D領(lǐng)域使用函數(shù)式編程的資料很少,主流還是使用面向?qū)ο蟆?br>
我以前也是用面向?qū)ο螅贿^(guò)自從我開(kāi)始接觸函數(shù)式編程,就擁抱了它。
希望能通過(guò)本系列,向讀者展示函數(shù)式編程的魅力,擴(kuò)展讀者的視野和思維。
能給你帶來(lái)什么收益?
1.手把手教你如何從0開(kāi)發(fā)3D引擎
2.學(xué)習(xí)函數(shù)式編程及其在3D領(lǐng)域的應(yīng)用
3.學(xué)習(xí)3D編程中基礎(chǔ)的功能實(shí)現(xiàn),如紋理、光照、模型等
4.學(xué)習(xí)引擎的設(shè)計(jì)和架構(gòu),如Data Oriented、多線程等
目標(biāo)讀者群
盡管本書使用的是WebGL 1這個(gè)Web 3D編程的API,但本書的設(shè)計(jì)和實(shí)現(xiàn)的思想是通用的,適合整個(gè)3D編程領(lǐng)域。
-
3D編程愛(ài)好者
-
函數(shù)式編程愛(ài)好者
-
Web 3D開(kāi)發(fā)工程師
-
3D引擎開(kāi)發(fā)工程師
章節(jié)安排
第一部分:準(zhǔn)備
主要內(nèi)容:
- 準(zhǔn)備預(yù)備知識(shí)
- 搭建開(kāi)發(fā)環(huán)境
- 搭建測(cè)試環(huán)境
第二部分:基礎(chǔ)
主要內(nèi)容:
-
學(xué)習(xí)函數(shù)式編程
-
學(xué)習(xí)函數(shù)式反應(yīng)式編程
-
學(xué)習(xí)Reason
第三部分:搭建雛形
主要內(nèi)容:
-
編寫最小的3D程序
-
從中提煉引擎
-
改進(jìn)引擎架構(gòu)
第四部分:增加功能
主要內(nèi)容:
-
增加基礎(chǔ)功能
-
加入Scene Graph
第五部分:增強(qiáng)擴(kuò)展性
主要內(nèi)容:
-
加入腳本組件
-
加入自定義材質(zhì)
-
加入其它可能的擴(kuò)展,如ui擴(kuò)展等
第六部分:應(yīng)用
主要內(nèi)容:
-
通過(guò)引擎支持的擴(kuò)展,加入實(shí)際應(yīng)用需要的功能(如picking等)
-
實(shí)現(xiàn)幾個(gè)完整的3D應(yīng)用
相關(guān)資料
Wonder官網(wǎng)
“用函數(shù)式編程,從0開(kāi)發(fā)3D引擎和編輯器”系列博文
“從0開(kāi)發(fā)3D引擎”系列博文
浙公網(wǎng)安備 33010602011771號(hào)