2016-04-19 77 views
1

我一直在玩opengl一段時間,我發現貼圖非常有趣。我有一個臉部選定的立方體,我可以將該臉部投影到2D圖像,並將該圖像中的顏色映射到3D模型。這個怎麼用?這涉及什麼算法?在像攪拌機這樣的軟件中,我們可以實時編輯二維投影中的頂點,並將其自動映射到三維模型。甚至有選項,以解開,立方項目,項目缸等opengl紋理如何工作?

enter image description here

我不知道這是否是問這樣一個問題的正確的地方。但我出於好奇而問這個問題。

回答

3

紋理基本上是將紋理元素(紋理的像素)映射到片段(構成屏幕上渲染幾何圖像的像素)。什麼texel被映射到給定的片段取決於片段的紋理座標。在最簡單的情況下,座標與每個頂點的幾何關係相關聯,並在幾何投影到屏幕上並進行柵格化後插入到碎片中。座標通常是標準化的,意味着它們的值介於0和1之間。對於2D紋理,有2個座標 - u和v。其中一個座標與紋理圖像的水平軸對齊,另一個與垂直軸對齊。在片段着色器中,通過紋理採樣器對紋理進行採樣以獲得給定座標的顏色,則採樣器只會返回根據座標,mipmap級別和插值方法找到的多個紋元的插值值。應用的座標可能因所需的紋理類型而異。插值方法改變最終的圖像質量。 Mipmapping使用 通常根據視圖距離(過濾)來更改紋理細節的級別。

更多信息,有些鏈接: https://www.cs.utexas.edu/~fussell/courses/cs384g/lectures/lecture12-Texture_mapping.pdf http://cg.informatik.uni-freiburg.de/course_notes/graphics_06_texturing.pdf http://www.cs.cmu.edu/~djames/15-462/Fall03/notes/09-texture.pdf