我正在處理類項目的掃描線渲染。渲染器工作到目前爲止,它讀取模型(主要使用猶他州茶壺),計算頂點/表面法線,並可以做平坦和phong陰影。我現在正在處理添加紋理映射,這是我遇到問題的地方(除了實際繪製屏幕上的點外,我不能使用任何OpenGL方法)。用圓柱體中間表面手動進行紋理貼圖
所以,我讀了一個紋理到我的應用程序,並有一個二維數組的RGB值。我知道這個概念是將紋理從2D紋理空間映射到簡單的3D對象(在我的情況下是圓柱體)。然後,我們現在可以將中間表面映射到物體表面上。
但是,我實際上並不知道如何做這些事情:)。我發現了一些將紋理映射到圓柱體的公式,但他們似乎總是會留下細節,例如使用哪些值。然後我也不知道如何獲取我的對象的頂點座標並獲得該點的柱面值。還有一些關於映射到柱面的其他StackOverflow帖子,但他們1)使用着色器等處理較新的OpenGL以及2)不處理中間曲面,所以我不知道如何從它們翻譯知識。
因此,任何關於使用圓柱體作爲中間表面將紋理映射到3D對象上的僞碼的幫助都將不勝感激。
紋理映射不以「中間面」工作。從技術上講,紋理爲插值函數定義採樣點,並且根據紋理座標沿原始光柵化器對插值函數進行採樣。紋理座標明確給出或從頂點位置計算。我知道這不是一個非常令人滿意的答案,因此我將它寫爲評論。 – datenwolf