當我們看到現實世界裡,有很多山地。那麼這種山地,在
3d世界裡又是怎麼樣顯示出來的呢?要模擬現實中的山地,就需要研究它怎麼樣構成,然後採用各種方法建立出來。在遊戲的世界裡,對於地形的要求是不嚴謹的,只要看起來像山地,就行了,而不像其它地理系統,一定要精確到跟現實世界里山比例一樣。因此,在這裡建立的
3d地形,都是近似地模擬出來,這樣就節省了很多任務作,加快地形的顯示,提高遊戲速度的流暢性。
這裡介紹的山地地形,主要使用高度圖來實現。它的原理是:先生成平面的網格,比如是4×
4大小,那麼它就有
16個頂點。接著,就設定每個網格頂點的高度,也就是設定每個頂點的
y軸座標值,隨著
y軸的座標值不同,就代表了高度不一樣。如果
y軸的值是有規律地變化,那麼顯示出來的網格,就是山地的形狀了,然後再加上各種不同的紋理,就可以顯示高山、沙灘、雪山和盤地等等。
山地網格1,如下圖:
山地圖形1,如下:
建立山地圖形2,如下圖:
3D遊戲從入門到精通 21 22
2.10.1 燈光與材質 在現實的世界裡,沒有光線,是什麼東西也看不見的。在d3d的世界裡,也是一樣的。但是在d3d裡有一種光線,是非常奇怪的,這種光線是沒有方向,沒有位置,整個世界全可以照亮的光線,它就是環境光,它其實有點像我們現實生活裡的無影燈。在d3d裡光線分為三種型別,分別是點光源 聚光燈和...
3D遊戲從入門到精通 11
2.10.1 索引緩衝區 上面已經學習了最簡單的三角形顯示,了解了整個3d物體的顯示流程,下面來學習乙個複雜一點的物體顯示,使用12個三角形構造成的正方體顯示。並且通過個例子學會使用索引緩衝區,提高圖形繪製的速度和效率。1 使用三角形構造立方體 由前面可知,任何複雜的物體,都是由三角形組成的。現在就...
3D遊戲從入門到精通 16
4 三角形帶列表 三角形顯示的方式總共分為三種,前面已經學習最多的是三角形列表,現在再來看看三角形帶列表是什麼樣的,這樣有什麼優點呢?這裡顯示圖形如下 上面的圖形可以看出,只有6個頂點就可以顯示4個三角形,而採用三角形列表的方式,只能顯示兩個三角形。因此採用這種方式就會大大提高渲染效率,減少占用記憶...