Unity3D實習生面試題總結-圖形學相關


圖形學相關


點積和叉積的物理意義

兩矢量點積,其中一矢量為單位矢量,結果為另一矢量在單位矢量上投影的長度。

兩矢量叉積,其結果為一垂直於兩矢量的新矢量。


GPU的渲染流程

本部分總結來自我對《Unity Shader 入門精要》一書的筆記

https://www.cnblogs.com/errornull/p/10026725.html

應用階段

首先將數據加載到內存中,將網格、紋理加載到顯存中,然后設置渲染狀態,如攝像機、燈光等,最后調用drawcall渲染命令,輸出圖元列表到頂點着色器。

幾何階段

圖元列表中的每個頂點都會調用一次頂點着色器,將頂點變換到齊次裁剪坐標系,得到歸一化的設備坐標NDC。然后對圖元進行裁剪,裁剪后的坐標經過屏幕映射得到屏幕坐標,和z坐標一起構成窗口坐標系。

光柵化階段

通過三角形設置得到三角網格的表示數據,根據數據來檢查每個像素是否被一個三角網格所覆蓋,被覆蓋的話就用三角網格的頂點信息對覆蓋區域的像素進行插值,被覆蓋的像素生成一個片元。然后片元經過片元着色器時會進行紋理采樣,計算出其覆蓋的片元的輸出顏色。

最后進行逐片元操作,又成輸出合並階段,對每一個片元進行模板測試、深度測試和混合,模板測試用來限制渲染區域,深度測試舍棄被遮擋的片元提升性能,合並操作可以實現半透明等效果。最后這些使用顏色緩沖區的顏色值的像素就會顯示到屏幕上。


免責聲明!

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



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