反射貼圖

反射映射(Reflection mapping)在計算機圖形學領域是用預先計算的紋理圖像模擬複雜鏡面的一種高效方法。紋理用來儲存被渲染物體周圍環境的圖像。有幾種不同的方法可以用來保存周圍環境,其中最常用的方法之一是標準環境映射,在這種方法中周圍環境在一個鏡面球體上反射得到單一紋理圖像。另外一種常用方法是立方環境映射,在這種方法中環境在立方體的六個表面上顯現出來,所以需要保存為六個正方形的紋理。

這種實現方法比傳統的光線跟蹤(光線跟蹤通過射出一束光線並且跟蹤光線的傳輸路徑來計算反射)算法效率更高,但是需要注意的是這種方法是實際反射的一種近似,有時甚至是非常粗糙的近似。這種技術的一個典型的缺點是沒有考慮自反射,即無法看到物體反射的物體自身的某一部分。

基本介紹

  • 中文名:反射貼圖
  • 外文名:Reflection mapping
典型的反射映射,標準環境映射,立方環境映射,在實時三維計算機圖形中的套用,標準環境映射,立方環境映射,

典型的反射映射

標準環境映射

標準環境映射更加常用的名稱是球形環境映射,是反射無限遠環境物體的紋理球面的套用。使用魚眼鏡頭、預渲染或者光探頭生成球形紋理,然後將這個紋理映射到空球表面,通過計算物體上個點的光向量到達環境圖上的紋素從而確定紋素的顏色。這項技術類似於光線跟蹤,但是由於所需物體各點的所有顏色圖形處理單元已經預先知道,所以所需做的就是計算入射與反射角度。
1982年 Gene Miller 在 MAGI Synthavision 首次試驗了球形環境映射。在 Christine Chang 的幫助下,他在 MAGI 的停車場拍攝了一幅聖誕裝飾照片。通過將球體的照片裁減到直徑大小,他將照片映射到空球表面(參見上面的過程)。然後,他將這幅紋理用到 Ken Perlin 創建的一個斑點狗模型上,並且將環境映射模型添加到停車場照片上。這種環境映射的技術最後在真實的環境高動態範圍成像中的基於圖像的照明中得到了套用。
球形映射有一些明顯的限制,其中之一是,由於紋理屬性的原因,在球形映射物體的後面有一個突變點。下面的立方映射就是為了解決這個問題而開發出來的,如果能夠正確地生成與濾波,立方映射就沒有明顯的接縫,所以很顯然它是舊的球形映射的替代者,目前球形環境映射在當今的圖形套用中幾乎已經銷聲匿跡了。

立方環境映射

立方反射映射是用立方映射使得物體看起來如同在反射周圍環境的一項技術。通常,這通常使用戶外渲染中使用的skybox完成。儘管由於反射物周圍的物體無法在結果中看到,所以這並不是一個真正的反射,但是通常仍然可以達到所期望的效果。
通過確定觀察物體的向量就可以進行立方映射反射,照相機光線在照相機向量與物體相交的位置按照曲面法線方向進行反射,這樣傳到立方圖(cube map)取得紋素(texel)的反射光線在照相機看來好像位於物體表面,這樣就得到了物體的反射效果。

在實時三維計算機圖形中的套用

標準環境映射

標準環境映射是一種用來模擬光滑表面對周圍環境的反射的技術,常見的如鏡子、光亮漆面的金屬等等。這種技術的實現主要通過將一張帶有周圍環境的貼圖附在所需要表現的多邊形表面來實現的。目前在實時3D遊戲畫面渲染中經常使用的有兩種環境映射。
球形環境映射是模擬在球體表面產生環境映射的技術,通過對普通貼圖的UV坐標進行調整計算來產生在球體表面應產生的扭曲。UV的計算利用球體表面的法線來計算。

    立方環境映射

    如果能夠正確使用,立方映射反射或許是渲染反射表面最快的方法。為了提高渲染的速度,每個定點都要計算反射光線的位置,然後,在於這些定點相關的多邊形中對位置進行插值,這樣就可取消對每個像素的反射進行計算。

    相關詞條

    熱門詞條

    聯絡我們