蒙皮演算法
Ⅰ 蒙皮演算法之對偶四元數 (Skinning algorithm for al Quaternions)
蒙皮演算法之對偶四元數
一、蒙皮簡介
在動畫領域,蒙皮是指將模型綁定到骨骼上的技術。我的理解是,Maya中為模型頂點分配權重是蒙皮的一部分,另一部分是通過骨骼控制模型(皮)運動的演算法。
二、線性混合蒙皮(Linear Blend Skinning)
線性蒙皮公式將變換後的頂點V視為所有對其有影響的骨骼變換矩陣(Cji)和對應權重(wi)以及頂點V坐標的乘積之和。
舉例:兩根骨骼j1和j2對頂點V有0.5的權重影響,V的旋轉中心與骨骼j2重合。在某一幀,它們的狀態如下。
下一幀,j1保持不變,j2繞X軸旋轉180度。通過公式計算變換後的頂點VI,如圖所示。
線性混合蒙皮的旋轉是線性混合的,旋轉角度的線性混合導致了「糖果包裝」問題。四元數旋轉可以插值在旋轉路徑的圓弧上解決這個問題。
三、直接四元數蒙皮(Direct Quaternion Blending)
直接四元數蒙皮將變換分為兩部分:用矩陣表示的縮放和平移,用四元數表示的旋轉。公式如下。
公式前部分表示縮放和平移,後部分表示旋轉四元數的權重混合。
四、對偶四元數蒙皮(Dual Quaternion Blending)
對偶四元數由兩個基本四元數組成,表示為八個實數元組。它將單位旋轉四元數和位移結合,用一個單位對偶四元數表示剛性變換。
旋轉和平移通過單位對偶四元數關聯起來。在蒙皮前單位化對偶四元數,確保只表示旋轉。
五、其他蒙皮演算法和對偶四元數蒙皮演算法結果對比
對比結果請參見文章的第13頁。
六、其他蒙皮
略。
七、在Maya中的蒙皮方法是可選的。
Ⅱ 計算機圖形學常用術語整理(1)
【英文縮寫】Projection
【中文翻譯】投影矩陣
【中文翻譯】模板測試
【中文翻譯】模板緩沖
【中文翻譯】深度測試
【中文翻譯】雙重緩沖
【補充說明】GPU會使用雙重緩沖,這意味著,對場景的渲染是在幕後發生的。
【中文翻譯】後置緩沖
【中文翻譯】前置緩沖
【補充說明】一旦場景已經被渲染到了後置緩沖中,GPU就會交換後置緩沖區和前置緩沖。
【中文翻譯】固定函數管線/固定管線
【補充說明】通常是指在較舊的GPU上實現的渲染流水線。這種流水線只給開發者提供一些配置操作,但開發者沒有對流水線階段的完全控制權。
【中文翻譯】敏唯光柵化
【補充說明】是把頂點數據轉換為片元的過程,具有將圖轉化為一個個柵格組成的圖象的作用,特點是每個元素對應幀緩沖區中的一像素。
【英文縮寫】PBR
【中文翻譯】基於物理的渲染
【補充說明】大型3D游戲常用的一種渲染流程,有利於保證畫面效果的真實感。
【相關資料】《Physically Based Rendering: From Theory to Implementation》
【中文翻譯】局部光照
【補充說明】光源直接作用於模型表面的光照效果。
【英文縮寫】GI
【中文翻譯】全局光照
【補充說明】
光源與環境中所有的表面相互作用(光線在物體表面反射、透射,產生新的光線)產生的光照效果,即真實的光照效果,相關演算法:輻射度演算法(Radiosity)、光線追蹤演算法(Ray Tracing)。
【英文縮寫】IBL
【中文翻譯】基於圖像的燈光
【補充說明】使用預處理的環境光貼圖來做光源的間接照明方案。
【英文縮寫】T-Buffer / Tbuffer
【中文翻譯】紋理緩沖
【補充說明】
Shader Model 4.0 常量緩沖的一種組織形式,以類似紋理的方式訪問,適用於通過隨機索引讀取的數據。
【英文縮寫】C-Buffer / Cbuffer
【中文翻譯】常量緩沖
【補充說明】
Shader Model 4.0 常量緩沖的一種組織形式,CPU訪問的延遲較低,適用於需要頻繁在CPU端更新的數據。
【英文縮寫】G-Buffer / Gbuffer
【中文翻譯】幾何緩沖
【補充說明】用於支持Deffered Rendering所使用的緩沖,用於儲存著色計算過程中的中間數據。
【英文縮寫】VTF
【中文翻譯】頂點紋理拾取
【補充說明】Shader Model 3.0的新特性,支持在頂點著色器中訪問紋理數據。
【英文縮寫】DR
【中文翻譯】延遲渲染
【補充說明】
將不接受光照的場景先渲染到Gbuffer,再對Gbuffer應用光照的一種技術,根據實現方式的不同,可以分為兩類:Deffered Shading和Deffered Lighting。
優點:避免了對不可見像素點的光照計算,允許通過光源幾何體控制光源的著色范圍,可以有效提升多光源場景的渲染效率。
缺點:對渲染透明物體的支持不好,不支持硬橋賣培件抗鋸齒,對顯存帶寬要求較高。
【相關資料】 Deferred Shading VS Deferred Lighting
【英文縮寫】FR
【中文翻譯】前向渲染 / 正向渲染
【補充說明】
傳統的渲染技術,逐像素點計算光照,當光源較多且場景較復雜時渲染效率較低,但能夠比較方便地渲染透明物體。
【英文縮寫】AA
【中文翻譯】抗鋸齒
【補充說明】
Aliasing的實際意義是」采樣頻率過低導致的圖形失真」,學名為」混疊」,具體現配悶象包括圖形邊緣產生鋸齒、畫面抖動等。目前主流的AA方法有:
(1) MSAA:Multi-Sampling Anti-Aliasing,多重采樣抗鋸齒
(2) FXAA:Fast Approximate Anti-Aliasing,快速近似抗鋸齒
(3) TXAA:Temporal Anti-Aliasing,時間性抗鋸齒
(4) SSAA:Super Sampling Anti-Aliasing,超級采樣抗鋸齒
【英文縮寫】TBR
【中文翻譯】分塊渲染 / 分片渲染
【補充說明】
當前移動設備顯卡的主流渲染優化方式,將幀緩沖分割為一小塊一小塊,然後逐塊進行渲染。
優點:可以充分利用GPU的Tile緩沖(On-Chip Buffer,相比Frame Buffer具有更快的讀寫速度,但體積很小)。
缺點:需要存儲當前幀所有的幾何體信息,當場景中幾何體過於復雜時,會得不償失。如果像素著色器階段存在剔除操作就無法生效。
【相關資料】 OpenGL Insights 閱讀有感 - Tile Based架構下的性能調校 翻譯
【英文縮寫】未知
【中文翻譯】幀緩沖拾取
【補充說明】
OpenGL ES(移動平台)的一種特性,支持像素著色器直接訪問幀緩沖中對應像素的數據。
【英文縮寫】PLS
【中文翻譯】像素本地存儲
【補充說明】
OpenGL ES(移動平台)的一種特性,支持像素著色器在像素內存地址中保存並訪問自定義數據,通常用於加速延遲渲染。
【相關資料】 Pixel Local Storage on ARM® Mali™ GPUs
【英文縮寫】PRT
【中文翻譯】預處理輻射傳播
【補充說明】
預處理場景中的光線相互作用,從而實現實時全局光照效果。核心實現原理是利用蒙特卡洛積分和球諧函數對光照信息進行編碼。
【相關資料】 PRT(Precomputed Radiance Transfer)&球諧光照(Spherical Harmonic Lighting)
【英文縮寫】SH
【中文翻譯】球諧函數
【補充說明】球諧函數是定義在單位球表面的基函數,在PRT方法中被用於優化光照計算。
【相關資料】 Spherical Harmonics Lighting
【英文縮寫】BRDF
【中文翻譯】雙向反射分布函數
【補充說明】描述入射光線經過某個表面反射後如何在各個出射方向上分布的函數表達式。
【相關資料】 BRDF_網路
【英文縮寫】BTDF
【中文翻譯】雙向透射分布函數
【補充說明】描述入射光線經過某個表面透射後如何在各個出射方向上分布的函數表達式。
【英文縮寫】BSDF
【中文翻譯】雙向散射分布函數
【補充說明】
描述入射光線經過某個表面散射後如何在各個出射方向上分布的函數表達式。
BSDF = BRDF + BTDF。
【英文縮寫】SPD
【中文翻譯】光譜功率分布
【補充說明】
光的功率:光在單位時間內穿過一個表面或一個空間區域的總能量,又稱輻射通量。
SPD描述的是光的功率與光的頻率的關系。
【英文縮寫】AO
【中文翻譯】環境光遮蔽
【補充說明】全局光照效果中物體縫隙處的柔和陰影。
【英文縮寫】SSAO
【中文翻譯】屏幕空間環境光遮蔽
【補充說明】一種用於模擬環境光遮蔽的近似演算法。
【英文縮寫】CSM
【中文翻譯】實時陰影
【補充說明】通常用來在大型場景模擬太陽投射的陰影。
【英文縮寫】PSSM
【中文翻譯】平行切分視錐
【補充說明】CSM的一種實現方式。
【英文縮寫】WPO
【中文翻譯】世界位置偏移
【英文縮寫】RHI
【中文翻譯】渲染硬體介面
【補充說明】常見的RHI:DirectX 和 OpenGL
【英文縮寫】HAL
【中文翻譯】硬體抽象層
【補充說明】D3D有倆種運行模式:HAL - 顯卡實現,REF - CPU模擬實現。
【中文翻譯】施密特正交化
【補充說明】將三維空間內任意線性無關向量組轉化為正交向量組的方法。
【中文翻譯】變形動畫
【補充說明】頂點混合動畫,即多個拓撲結構相同的模型之間根據時間插值產生的動畫。
【英文縮寫】RTT
【中文翻譯】渲染到紋理
【補充說明】將紋理設置為渲染目標,再執行渲染操作,將圖元渲染到紋理上。
【英文縮寫】LOD
【中文翻譯】多細節層次
【補充說明】大型3D游戲用於保證游戲幀率的一種優化方式。
【英文縮寫】DMap / DMAP
【中文翻譯】置換貼圖
【補充說明】用於表示材質表面沿法線方向高度細節的紋理貼圖
【中文翻譯】批次
【補充說明】指代輸入數據(頂點、紋理、常量)經過GPU流水線(VertexShader、PixelShader)的處理後,輸出到緩沖(BackBuffer / DepthBuffer / StencilBuffer)中的過程。
【英文縮寫】MRT
【中文翻譯】多渲染目標
【補充說明】允許像素著色器將計算結果輸出到多個不同的緩沖,PC平台中使用Deffered Rendering所必須的一種硬體支持。
【英文縮寫】OC
【中文翻譯】遮擋剔除
【補充說明】通過剔除視錐體內被遮擋的模型網格,達到降低GPU負載的目的。
【英文縮寫】LBS
【中文翻譯】線性混合蒙皮演算法
【英文縮寫】DQS
【中文翻譯】對偶四元數蒙皮演算法
【英文縮寫】DOF / DoF
【中文翻譯】景深
【英文縮寫】COC / CoC
【中文翻譯】散光圈 / 彌散圈
【補充說明】在透鏡系統中,處於聚焦范圍外的物體上的像素點成像會變成一個模糊圈,這是一個非線性映射過程。
【英文縮寫】DCC Tools
【中文翻譯】數字內容創作工具
【補充說明】美術創建模型、紋理等資源使用的工具軟體,如:3ds Max、Maya、Photoshop等。
【英文縮寫】SDF
【中文翻譯】有向距離場
【補充說明】到物體(2D或3D的多邊形網格)表面最近距離的采樣紋理或網格。通常使用負值表示物體內部到表面的距離,使用正值表示物體外部到表面的距離。SDF常見的應用領域:布料動畫碰撞檢測、多物體動力學計算、字體渲染等。
【英文縮寫】SSR
【中文翻譯】屏幕空間反射
【補充說明】實時渲染中用於模擬「光滑物體表面反射場景對象」的一種後處理技術
【英文縮寫】SSS / 3S
【中文翻譯】次表面散射
【補充說明】光線在材質內部不斷折射而形成的視覺效果,常見於玉石、牛奶、人類皮膚等材質中。
【英文縮寫】SSSS / 4S
【中文翻譯】可分離次表面散射
【補充說明】模擬次表面散射效果的一種方式
【英文縮寫】SSSSS / 5S
【中文翻譯】屏幕空間次表面散射
【補充說明】模擬次表面散射效果的一種後處理技術
【英文縮寫】Specular
【中文翻譯】高光反射
【英文縮寫】lambert
【中文翻譯】蘭伯特光照模型
【補充說明】是光源照射到物體表面後,向四面八方反射,產生的漫反射效果。這是一種理想的漫反射光照模型。
【英文縮寫】Albedo
【中文翻譯】固有色/貼圖
【英文縮寫】Emission
【中文翻譯】自發光
【英文縮寫】Gloss
【中文翻譯】光澤度
【英文縮寫】Diffuse
【中文翻譯】漫反射
【中文翻譯】粗糙度
【中文翻譯】折射
【英文縮寫】Transmission
【中文翻譯】透射率
【補充說明】光線在物體表面經過散射後,有兩種方向:一種將會散射到物體內部,這種現象被稱為折射(refraction)或透射(transmission)
【英文縮寫】Translucency
【中文翻譯】透明度
【英文縮寫】Opacity
【中文翻譯】不透明度
【英文縮寫】OpacityMask
【中文翻譯】不透明遮罩
【英文縮寫】Custom Lighting
【中文翻譯】自定義光照
【英文縮寫】Tessellation
【中文翻譯】曲面細分
【英文縮寫】Smoothness
【中文翻譯】平滑