第1章 開啟Threejs之旅(一)


 

目錄

先知:

  • 1.1  What is Threejs
  • 1.2  Threejs能做什么
  • 1.3  Threejs源自何方
  • 13.1 下載
  • 1.4  剖析源目錄結構
  • 1.5  配置你的開發環境
  • 1.6  讓引擎飛起來
  • 1.7  第一個框架
  • 1.8  第二個框架(重構)
  • 1.9  轉角遇到結尾

轉載自:http://www.hewebgl.com

先知:

1、 沿襲頁游戰勝桌游的經驗,Webgl游戲會成為必然趨勢。

2、 WebGL家族中Threejs將盛行。

3、 學會Threejs簡單實例。

1.1  What is Threejs

    什么是threejs,很簡單,你將它理解成three + js就可以了。three表示3D的意思,js表示javascript的意思。那么合起來,threejs就是使用javascript來寫3D程序的意思。

    Javascript是運行在網頁端的腳本語言,那么毫無疑問Threejs也是運行在瀏覽器上的。

    看到這里,也許你就開始有很多疑問了,那么讓我來猜猜你的疑問吧。

    疑問:

1、javascript能寫高效率的3D程序嗎?

    能。技術在進步,幾年前也許這是不行,寫3D程序,最好是用c++,這樣才能保證效率,但是現在,世界改變了。javascript的計算能力現在是很強的,做3D程序,做服務器都沒有問題。如果你對服務器感興趣,你可以看看nodejs,當然,不是現在。現在,你最好保持熱情,將Threejs學精深,在工作學習上做出更大的成績。

2、javascript不是在瀏覽器上運行的嗎,那怎么能寫3D程序呢?

    是的,不錯javascript是在瀏覽器里運行的,但是沒有說3D程序就不能在瀏覽器上運行。

    瀏覽器對3D的支持,是一個激動人心的特性,現在,是的,就是現在,你可以寫基於瀏覽器的3D應用了。

提示:

    好的3D應用,在騰訊開放平台上,會有一個不錯的收入。騰訊開發平台是通過廣告和訪問量來收費的,你可以寫一個好的3D應用,就能夠掙一些錢了。

1.2  Threejs能做什么

    一言以蔽之,它能寫出在瀏覽器上流暢運行的3D程序。

    在美的文字,也比不上圖片,所以我們喜歡看美女,而不是美文,嘿嘿。相信讀這篇文章的男性是多於女性的,所以,我不撒謊,美女我也喜歡。

    讓我們看一些圖,來領會一下,Threejs能做什么?

    這些就是Threejs能做的事情,我向你保證,完成這些事情,會比c++用更少的代碼。而且更容易,更酷。

1.3 Threejs源自何方

    它源自github的一個開源項目,發展相當迅速,現在已經發展到r57版了。

13.1 下載

    先去下載代碼,它的地址是:

    https://github.com/mrdoob/three.js。

    如圖所示:

    如果你覺得慢,也可以在WebGL中文網網盤下載(http://yunpan.cn/Q5QaHhznwJQbM) 下載。

1.4  剖析源目錄結構

    要了解事物的真相,就要解析到它的深處去,我們來看看Threejs的源目錄結果。用解壓軟件解開剛才的源碼包,各個目錄如下所示:

    Build目錄:包含兩個文件,three.js和three.min.js。一個已經壓縮,一個沒有壓縮的js文件。

    Docs目錄:這里是threejs的幫助文檔,里面是各個函數的api,可惜並沒有詳細的解釋。

    Editor目錄:一個類似3D-max的簡單編輯程序,內容很簡單。

    Examples目錄:一些很有趣的例子demo,可惜沒有文檔介紹。

    Src目錄:源代碼目錄,里面中所有源代碼。

    Test目錄:一些測試代碼,基本沒用。

    Utils目錄:存放一些腳本,python文件的工具目錄。

    .gitignore文件:git工具的過濾規則文件,沒有用。

    CONTRIBUTING.md文件:一個怎么報bug,怎么獲得幫助的說明文檔。

    LICENSE文件:版權信息。

    README.md文件:介紹threejs的一個文件,里面還包含了各個版本的更新內容列表。

1.5  配置你的開發環境

    在QQ群里,很多朋友經常問一些關於開發環境的問題,我們在這里回答一下:

1、為什么我的瀏覽器不能運行Threejs?

    Threejs本質上是Webgl,如果你的瀏覽器不支持Webgl,那么肯定你就不能完整的運行Threejs。支持Webgl的瀏覽器很多,例如Chrome、FireFox、360安全瀏覽器6.0等,而IE瀏覽器對Webgl標准的支持就不太好。所以我們推薦使用Chrome瀏覽器,你可以在如下地址下載:

https://www.google.com/intl/zh-CN/chrome/browser/

2、javascript用什么工具開發比較好,可以有智能提示?

    老實說,並沒有太好的javascript開發工具。我就曾經試過很多種javascript開發工具,例如Dreamweaver、Visual Studio、Zend Studio、Notepad++、Eclipse等。發現都不好用,沒有太好的智能提示,使用起來特別麻煩。直到遇到了WebStorm,才心花怒放,一見鍾情,從此開發javascript再也沒有離開過WebStorm。

在工具的使用上,我走了很多彎路,浪費了很多眼球細胞,所以你就不要在這上面多費時間了,我估計能節約你5天的時間吧。

你可以到百度里去尋找WebStorm,然后下載它,為了給你節省時間,這里提供一個下載地址:

http://www.ddxia.com/view/129861415446916.html

3、各位大俠,Threejs怎么調試啊?

    這也是我遇到的一個問得最多的問題。按照一般的思路,在集成開發環境里面就能夠運行調試,所以應該在WebStorm中就能夠運行,但是這里我不推薦這樣,因為配置起來比較麻煩,沒有必要在這里浪費時間。

    所以,我們使用Chrome瀏覽器自帶的功能在調試代碼。

    為了,讓我們的主線不太長,你可以點擊下面的連接去學習如何調試代碼?

    在chrome中調試javascript代碼。

1.6  讓引擎飛起來

    Threejs引擎怎么嵌入網頁中,讓它運行起來呢?很簡單,只要html文件中引入three.js文件,就可以了。代碼如下:

 

 

    這里黑體部分表示引入了three.js文件,這個文件會自己初始化threejs的一些變量和環境。

    為了驗證Threejs確實啟動,我們用Chrome瀏覽器打開上面的那個網頁,瀏覽器里面什么都沒有,這時按F12鍵,打開調試窗口,並在Console下輸入THREE.REVISON命令,得到56,這表示現在使用的three.js文件的版本是56。這個過程的主要截圖如下所示:

    這樣,只要得到一個結果,就說明Threejs確實運行起來了。實踐永遠出真知,現在就來試一試吧。

題外話:THREE是一個threejs對象,可以狹隘的理解為threejs引擎的抽象。它代表着threejs引擎本身,其中包含引擎的很多常用屬性和方法。例如THREE.VERSION就代碼引擎的版本。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM