3D遊戲從入門到精通 28

2021-08-22 05:19:19 字數 1240 閱讀 6544

載入網格模型檔案

在遊戲裡,最常的東西是什麼呢?肯定是各種怪物和場境。比如在《傳奇世界》就有很多豬和青銅獸。在3d遊戲裡,要顯示乙個地圖,就需要載入網格模型檔案來顯示。比如像《半條命》裡的練習場,就是乙個3d模型檔案。因此,遊戲要顯示的東西,大多是從檔案裡載入模型來顯示的。遊戲顯示的模型都是比較複雜的,比前面所用到的三角形、立方體等模型,要複雜很多。如果每個模型都是用程式來實時建立,速度也是很慢的。目前大多數模型是使用建模型軟體來建立,然後儲存為檔案,再程式來載入顯示。比較流行的建模軟體有3ds max、maya等,美工就可以使用它們來建立地圖中的場境、怪物的模型。在開發乙個遊戲裡,美工的人員往往佔了絕大部份,幾個g的遊戲,和模型佔了絕大多數空間。

x檔案格式

美工做出來的模型和,可能是各式各樣的,格式也不一致,並且分離的。這樣就需要把它們轉換成統一的檔案格式,方便遊戲引擎載入,當然這種檔案格式也是作了優化的工作。比如《半條命》裡的mdl檔案,就是作了很多預計算,並且優化了頂點和三角形列表。對於初學者來說,越簡單的檔案格式,就越容易學習。因此,就採用了d3d裡的x檔案格式。x檔案格式的功能也是非常強大的,它可以自定義各種資料結構,可以支援靜態模型,也可以支援動畫。x檔案格式可以文字方式儲存,也可以二進位制方式儲存。使用x檔案格式特別方便,因為d3d裡已經完全支援讀取和輸出x檔案格式,同時d3d也提供給3ds max、maya等外掛程式輸出x檔案格式。

如果覺得x檔案格式不好,當然也可以自己定義一種更好的檔案格式,但就需要自己去寫載入、儲存、優化和匯出程式。

下面就來看看怎麼樣載入乙個x檔案的模型顯示,顯示的效果如下:

電子書mm3d引擎源程式例子源程式49元一套

聯絡人:蔡軍生

****:

email: caimouse1976 at sina.com

載入x檔案步驟

在3d遊戲裡,大部份的動作,就是載入不同的模型檔案。在這裡先從最簡單的學起,從原理性學起,再多,再複雜的東西都是一樣的。在這裡只是載入了乙個簡單的立方體,它的檔名稱是cube_txt.x。立即來看看程式是怎麼樣載入的呢?

3D遊戲從入門到精通 31

當我們看到現實世界裡,有很多山地。那麼這種山地,在 3d世界裡又是怎麼樣顯示出來的呢?要模擬現實中的山地,就需要研究它怎麼樣構成,然後採用各種方法建立出來。在遊戲的世界裡,對於地形的要求是不嚴謹的,只要看起來像山地,就行了,而不像其它地理系統,一定要精確到跟現實世界里山比例一樣。因此,在這裡建立的 ...

3D遊戲從入門到精通 21 22

2.10.1 燈光與材質 在現實的世界裡,沒有光線,是什麼東西也看不見的。在d3d的世界裡,也是一樣的。但是在d3d裡有一種光線,是非常奇怪的,這種光線是沒有方向,沒有位置,整個世界全可以照亮的光線,它就是環境光,它其實有點像我們現實生活裡的無影燈。在d3d裡光線分為三種型別,分別是點光源 聚光燈和...

3D遊戲從入門到精通 11

2.10.1 索引緩衝區 上面已經學習了最簡單的三角形顯示,了解了整個3d物體的顯示流程,下面來學習乙個複雜一點的物體顯示,使用12個三角形構造成的正方體顯示。並且通過個例子學會使用索引緩衝區,提高圖形繪製的速度和效率。1 使用三角形構造立方體 由前面可知,任何複雜的物體,都是由三角形組成的。現在就...