「知乎知識庫」— 3D 渲染
概述
3D 渲染是通過電腦計算的方式把模型從 3D 模型網格呈現出 2D 真實感高的圖像,計算過程包含光線及輔助光線,材料的材質和紋理,相機相關設置等綜合變數。
3D 渲染的分類
3D 實時渲染
實時渲染主要應用在遊戲領域,電腦會實時的計算和展示所渲染的結果,幀率在 20-120 頻率左右。因此需要在幀率一定的情況下最大化的展示真實性。計算機在圖像處理的過程中會用到一些」技巧「是肉眼感官為」真實「世界,這些」技巧「都包括鏡頭光暈(lends flare),景深(depth of field)和動態模糊(motion blur)。計算機的算力決定了渲染的真實感,通常需要 GPU 來協助完成。
3D 非實時渲染
3D 非實時渲染通常是電影或視頻,藉助計算機有限的算力,通過延長渲染時間達到更加真實的效果。射線追蹤(ray tracing)和輻射度演算法(radiosity)是非實時渲染常用的技巧,以達到更加真實的感覺。隨著技術的發展,不同種類的物質形式有了更精確的計算技巧,例如粒子系統(模擬雨,煙和火),容積取樣(模擬霧,灰塵),以及焦散性質和子面散射(subsurface scattering)。渲染過程中不同層的物質是分開計算後合成為一個最終布景。
與渲染相關的光學原理
渲染所做的事情都是為了讓結果看起來更像是真實的景象,而真實世界的光和材質都是由物理原理所決定的,因此,渲染中所運用的一些演算法,都是為了模擬真實世界的物理原理。
全局照明 (Global Illumination)
除了 3D 布景中的設置的基礎照明外,全局照明考慮到不同物質之間反射的光,疊加計算到渲染過程中,使之更加真實。
射線追蹤(Ray Tracing)
在渲染過程中,我們是通過相機這個媒介定位到與 3D 布景中物體的關係的(下面的篇幅會重點介紹這個)。因此「相機」是我們的眼睛的位置。類似現實世界中我們看到物體是因為光打到物體上,然後反射到我們的眼睛裡,射線追蹤是與此反向的倒推過程。由圖所示,Camera 發射的光線 View Ray 通過屏幕的像素點(每一個像素點均得到計算)打到 3D 布景的物質 Scene Object 上,通過計算物質的反射指數反推回光源 Light Source , 這樣每個像素點都可以得到一個計算結果,以展示所在位置的相關視覺信息。
馮氏著色(Phone Shading)
在光照模型中,主要由三部分組成:環境光(ambient),漫反射(diffuse),鏡面反射(specular)。不同的材質會根據光的不同而呈現出不同的視覺信息。
其中下標 表示環境光(Ambient Light),下標 表示漫射光(Diffuse Light),下標 表示高光(Specular Light), 表示反射係數或者材質顏色, 表示光的顏色或者亮度, 可以模擬表面粗糙程度,值越小越粗糙,越大越光滑。
物體材質和紋理 (Object Texture)
和渲染相關的物理性質包括液體的稠度,對光的折射度以及反射度,材料本身的厚度,表層的紋理粗糙度等等,這些參數影響了光的走向以及強弱,使計算變得多維。BRDF(雙向反射分布函數)就是用於描述入射光和經過物體反射及折射後光的關係。
其中 就是 BRDF, 是入射光方向, 是觀察方向,也就是我們關心的反射光方向。
是表面反射到 方向的反射光的微分輻射率。表面反射到 方向的反射光的輻射率為
,來自於表面上半球所有方向的入射光線的貢獻,而微分輻射率 特指來自方向
的入射光貢獻的反射輻射率。
是表面上來自入射光方向 的微分輻照度。表面接收到的輻照度為 ,來自上半球所有方向的入射光線的貢獻,而微分輻照度 特指來自於方向 的入射光。
有的時候,物體會有多層物質(Multi-Layered Material)的疊加,例如汽車的外殼是金屬合成物,而表面透明的漆又疊加在金屬之上。這其中計算較為複雜,這裡不多介紹。
攝影相關參數
3D 布景中相機的設置如同現實世界中的攝影,因此和攝影的參數完全一致。我們需要根據光的亮度以及我們想要的效果,來設置這台「相機」。常用的參數包括焦距(Focal Length)感光度 ISO,光圈(Aperture,相關參數設置為 f-stop)和快門速度(Shutter Speed)。這些設置主要由所攝對象決定;例如 3D 渲染的物品為靜物(1-5 米內)時,設置為中長焦鏡頭(80-150mm)以及大光圈以達空間縱深感。如果是室內裝修渲染則常用廣角鏡頭(24-50mm)以及小光圈來減少背景虛化。
圖中相機的位置,和物體的關係,以及焦點都在Viewport中有展示;右下角的圖是相機拍出來的真實效果。
參考資料
[1] 3Drendering,wikipedia
[2] Ray_tracing_(graphics),wikipedia
[3] https://blog.csdn.net/u010345749/article/details/74160114, csdn
[4] Phong_shading,wikipedia
[5] Global_illumination,wikipedia
[6] Tutorial No.51 : Understanding Depth Of Field in V-Ray and 3ds Max,youtube
推薦閱讀:
※【知識庫】陳瑞華:行政證據、技術偵查材料的刑事證據資格
※知乎專欄《金毛犬知識庫》徵稿說明
※女貞子 - 意古中醫·中醫在線知識庫
※蛇莓 - 意古中醫·中醫在線知識庫
※丹參 - 意古中醫·中醫在線知識庫
TAG:知識庫 |