當前位置:首頁 >教程首頁 > 华体会hth体育app在线登录 > 3D模型大師班 >圖形學基礎:如何在屏幕上繪製立方體?

圖形學基礎:如何在屏幕上繪製立方體?

發布時間:2022-08-09 09:39:26

Hello,大家好,今天給大家帶來圖形學基礎:如何在屏幕上繪製立方體?我是幾維。

當我們需要在屏幕上顯示或繪製任何一個立方體時,那麼我們就必須繪製一個網格,然後在上麵繪製紋理著色。這裏就延伸出來圖形渲染管線。本文隻是概述性的描述在屏幕上繪製一個立方體的步驟,不會過於深入,側重於美術同學閱讀。

渲染

在電腦繪圖中,是指以軟件將3D模型數據轉換成2D圖像的過程。

圖形渲染管線

就是繪製3D圖形需要的一係列步驟,抽象成渲染管線(流水線)。管線關注的是數據的流轉,映射,變換和處理。

1、立方體頂點坐標

如果在屏幕上繪製一個三角形,第一步就是繪製出頂點,因為網格是由頂點組成的。一個頂點要描述它的位置需要三個軸向的坐標(還包括法線和紋理UV坐標),其實就是用三個數來描述頂點的位置。而這些數據也被稱之為Vertex Buffer(頂點緩存)。

1.jpg

2、添加頂點索引數組

而一個立方體由八個頂點數組構成。每個頂點有它自身的一個號碼,而這些號碼就是按它在文件裏麵出現順序作為它的號碼。

2.jpg

3、三角形信息

有了這些頂點索引數組數據,我們就可以繪製三角麵。在3D渲染中每三個頂點構成一個麵,也就是一個三角麵。而這組數據也被稱為Index Buffer(索引緩存)。

3.jpg

4、頂點著色器

有了上述的這些數據後,就可以把這些數據輸入到頂點著色器中。將模型每個頂點(坐標)位置信息,用頂點著色器換算(變換/計算)每個頂點應在屏幕的位置(頂點位置的空間變換)。也就是說,為了繪製這些頂點,我們將收集的頂點信息,將它在模型空間中頂點信息變換成世界空間,然後再變換到攝像機(觀察)空間,到裁切空間,最後投射到屏幕空間上繪製它們。

4.jpg

5、柵格化

圖元組裝得到的三角形,柵格化就是思考如何把這些三角形映射成為一個一個的像素,哪些三角形對應哪些像素。這個中間有一些對應的關係。每一個像素又稱之為片元。在柵格化中相當於把模型的三角麵投影到了我們的屏幕上。因為顯示器是由一個個像素組成,這一步就要把這些三角形變成屏幕上對應的像素。每個像素是由相連的點生成的,那麼每個像素就會根據這些點插值出準確的數據。

5.jpg

6、片元(像素)著色器

經過頂點著色器處理和柵格化的數據輸出到片元(像素)著色器後,就需要從一個(攝像機)視角繪製出這些數據。然後就會逐個像素輸出每個像素的顏色。立方體形狀包圍的每一個像素格都會根據頂點著色器定義的方法去計算它的顏色。最後就會繪製出來一個完整帶光影和紋理的立方體。換句話說,也就是給每一個像素上色。

6.jpg

7、幀緩衝區

完整的渲染圖像就會輸出到幀緩衝區中。顯示器下一幀要顯示什麼,就把顏色寫到幀緩衝區(Frame Buffer)裏麵。用於存放渲染的最終結果。最終顯示器從幀緩衝區裏麵拿到圖像,顯示在顯示器的屏幕上(中間包含一個後處理,這裏就不展開了)。

7.jpg

8、參考

《unity shader 入門精要》

GAMES01-現代計算機圖形學入門-閆令琪

莊懂的技術美術入門課(美術向)

來源:Thepoly公眾號

华体会hth体育网 賞析
  • 2101期學員李思庭作品

    2101期學員李思庭作品

  • 2104期學員林雪茹作品

    2104期學員林雪茹作品

  • 2107期學員趙淩作品

    2107期學員趙淩作品

  • 2107期學員趙燃作品

    2107期學員趙燃作品

  • 2106期學員徐正浩作品

    2106期學員徐正浩作品

  • 2106期學員弓莉作品

    2106期學員弓莉作品

  • 2105期學員白羽新作品

    2105期學員白羽新作品

  • 2107期學員王佳蕊作品

    2107期學員王佳蕊作品

專業問題谘詢

你擔心的問題,火星幫你解答
×