本申請涉及計算機圖形渲染,特別涉及一種基于模型空間的次表面散射模擬方法和裝置、計算設備和計算機可讀存儲介質。
背景技術:
1、次表面散射(subsurface?scattering,簡稱sss)是一種模擬光線在物體表面下傳播并被散射的現(xiàn)象,這種現(xiàn)象通常發(fā)生在物體表面下有一層或多層非均勻的介質時,如皮膚、大理石、毛發(fā)等。次表面散射可以增加物體的真實感和質感,使其看起來更加逼真。但是真實的次表面散射需要大量的計算,在普通的移動終端上難以支持,因此常規(guī)的做法是將散射效果直接畫到貼圖上,導致渲染效果缺乏真實感和互動性,用戶體驗較差。
技術實現(xiàn)思路
1、有鑒于此,本申請實施例提供了一種基于模型空間的次表面散射模擬方法和裝置、計算設備和計算機可讀存儲介質,以解決現(xiàn)有技術中存在的技術缺陷。
2、根據本申請實施例的第一方面,提供了一種基于模型空間的次表面散射模擬方法,包括:
3、在模型空間獲取渲染對象的頂點坐標,根據頂點坐標之間的關系對渲染對象進行線性插值,得到渲染對象在不同姿態(tài)下的漸變遮罩;
4、將模型空間的坐標軸方向向量轉換到世界空間,得到世界空間下的第一向量;根據所述第一向量得到渲染對象的當前姿態(tài);
5、根據渲染對象當前的姿態(tài)選擇對應的所述漸變遮罩,結合渲染對象的基礎顏色完成次表面散射模擬。
6、根據本申請實施例的第二方面,提供了一種基于模型空間的次表面散射模擬裝置,包括:
7、第一計算單元,用于在模型空間獲取渲染對象的頂點坐標,根據頂點坐標之間的關系對渲染對象進行線性插值,得到渲染對象在不同姿態(tài)下的漸變遮罩;
8、轉換單元,用于將模型空間的坐標軸方向向量轉換到世界空間,得到世界空間下的第一向量;根據所述第一向量得到渲染對象的當前姿態(tài);
9、判斷單元,用于根據所述第一向量得到渲染對象的當前姿態(tài);
10、第二計算單元,用于根據渲染對象當前的姿態(tài)選擇對應的所述漸變遮罩,結合渲染對象的基礎顏色完成次表面散射模擬。
11、根據本申請實施例的第三方面,提供了一種計算設備,包括存儲器、處理器及存儲在存儲器上并可在處理器上運行的計算機指令,所述處理器執(zhí)行所述指令時實現(xiàn)所述一種基于模型空間的次表面散射模擬方法的步驟。
12、根據本申請實施例的第四方面,提供了一種計算機可讀存儲介質,其存儲有計算機指令,該指令被處理器執(zhí)行時實現(xiàn)所述一種基于模型空間的次表面散射模擬方法的步驟。
13、通過本申請的實施例提供的方法,在著色器中進行物體渲染時,首先獲取物體頂點在模型空間的坐標,根據坐標的位置關系進行插值計算,得到物體在不同姿態(tài)下的漸變顏色;進而根據坐標系轉換關系得到物體在世界空間的姿態(tài),并根據物體當前的姿態(tài)選擇對應的漸變顏色完成了次表面散射渲染效果。該方案通過結合模型空間位置坐標,世界空間變換矩陣等數據,采用顏色漸變的方式模擬次表面透射效果,避免了復雜的實時光線追蹤計算,既創(chuàng)造出了較為真實的視覺效果,同時保持了較好的性能平衡,適合用于移動端上的三維應用。
1.一種基于模型空間的次表面散射模擬方法,其特征在于,包括:
2.根據權利要求1所述的方法,其中,所述根據頂點坐標之間的關系對渲染對象進行線性插值,得到渲染對象在不同姿態(tài)下的漸變遮罩包括:
3.根據權利要求1所述的方法,其中,所述將模型空間的坐標軸方向向量轉換到世界空間,得到世界空間下的第一向量包括:
4.根據權利要求3所述的方法,其中,所述根據所述第一向量得到渲染對象的當前姿態(tài)包括:
5.根據權利要求4所述的方法,其中,所述根據渲染對象當前的姿態(tài)選擇對應的所述漸變遮罩,結合渲染對象的基礎顏色完成次表面散射模擬包括:
6.一種基于模型空間的次表面散射模擬裝置,其特征在于,包括:
7.一種計算設備,包括存儲器、處理器及存儲在存儲器上并可在處理器上運行的計算機指令,其特征在于,所述處理器執(zhí)行所述指令時實現(xiàn)權利要求1-5任意一項所述方法的步驟。
8.一種計算機可讀存儲介質,其存儲有計算機指令,其特征在于,該指令被處理器執(zhí)行時實現(xiàn)權利要求1-5任意一項所述方法的步驟。