OGL(教程41) 物體運動模糊

2021-08-30 11:01:08 字數 628 閱讀 2866

背景知識:

執行模糊是高速3d遊戲中常用的技術,它的目的是在運動的物體上加入模糊效果。這個增加了玩家的真實體驗感。運動模糊可以使用多種方式實現。基於模糊的攝像機,它的焦點在移動的攝像機,還有一種方式是基於模糊的物體。本節我們使用一種技術來實現後者。

運動模糊背後的原理是,我們可以計算乙個運動的向量,叫做為運動向量,它是在兩幀之間對渲染的畫素進行運動。從當前的顏色緩衝中沿著這個向量取樣,然後對結果進行平均,結果就會得到畫素,它代表了潛在的運動的物體。這就是運動模糊的全部。讓我們詳細的介紹下。下面就是介紹需要的步驟,介紹這個之後,將會重新回顧下**。

1、技術被分為兩個部分-渲染通道和運動模糊通道。

2、在渲染通道中,我們渲染兩個緩衝-正常的顏色緩衝和乙個運動向量緩衝。顏色緩衝包含了原始,他是沒有運動模糊的渲染原始。運動向量包含了乙個向量,針對的是每個畫素,它代表了當前幀和之前幀的螢幕移動方向。

3、運動向量的計算是提供前一幀的wvp矩陣給vs。我們使用當前的wvp矩陣對區域性座標空間的每個頂點進行變換,然後利用前一幀的wvp矩陣用於裁剪空間,然後把兩個結果傳給fs。在fs中對裁剪空間的位置進行插值,然後除以w座標得到ndc座標。這就完成了把座標對映到螢幕,所以我們可以用當前點位置減去前一陣的位置而得到運動向量。這個運動向量儲存於乙個紋理。

4、

OGL(教程22) 模型載入

背景知識 我們不能手動的建立複雜的模型。正如你所想象的,為每個頂點指定位置和其他的屬性,並且要在縮放的時候保持正確是不現實的。乙個盒子 金字塔或者是簡單的表面是ok的,但是對於人臉這種複雜的網格結構就不可行了。現實的世界或者是商業的應用,處理的網格模型都是通過設計師設計的模型,他們使用blender...

OGL(教程35) 延遲渲染1

從17節開始,到現在對燈光的處理就是所謂的向前渲染或者向前著色。這是最直接的方式,我們在頂點著色器中對物體的各個頂點做變換 對法線進行變化,把位置變換到裁剪空間 然後在fs中對畫素進行光照計算。對於每個物件的每個畫素只能呼叫一次fs,我們需要對fs提供所有的光源資訊,然後在計算這個畫素的光照的時候全...

opengl 教程 8 物體縮放

縮放矩陣比較簡單,它的目的就是在三個軸 x,y,z 方向,對物體長度進行縮放 或者說,對頂點在三個軸的分量進行縮放 當然也可以選擇某個軸方向來縮放。對物體進行縮放的原因主要是用來匹配世界空間不同物體的大小,因為三維物體建模都是在模型空間,通常 x,y,z 的範圍都是 0,1 而世界空間中,物體有大有...