// Ref: http://jcgt.org/published/0003/02/03/paper.pdf
//GGX可見性項V
//G(l,v,h)=G1(l)G1(v)
inline half SmithJointGGXVisibilityTerm (half NdotL, half NdotV, half roughness)
{
//#if 0分支不會被執(zhí)行,執(zhí)行下面的簡化
#if 0
//原始公式
//根據(jù)GGX的G(l,v,h)公式,分子分母同時除2*NdotL/2*NdotV,最后的結(jié)果分母可以整理成(1 + sqrt(a2 * (1 - NdotL2) / NdotL2 + 1)) * 0.5f;
//疑問:下方的值計算不一致,以及最后G的值計算是否有問題
// Original formulation:
// lambda_v = (-1 + sqrt(a2 * (1 - NdotL2) / NdotL2 + 1)) * 0.5f;
// lambda_l = (-1 + sqrt(a2 * (1 - NdotV2) / NdotV2 + 1)) * 0.5f;
// G = 1 / (1 + lambda_v + lambda_l);
// Reorder code to be more optimal
half a = roughness;
half a2 = a * a;
//重排代碼為何會出現(xiàn)NdotL,NdotV混用?
half lambdaV = NdotL * sqrt((-NdotV * a2 + NdotV) * NdotV + a2);
half lambdaL = NdotV * sqrt((-NdotL * a2 + NdotL) * NdotL + a2);
//簡化的可見性項
//((4.0f * NdotL * NdotV)
// Simplify visibility term: (2.0f * NdotL * NdotV) / ((4.0f * NdotL * NdotV) * (lambda_v + lambda_l + 1e-5f));
return 0.5f / (lambdaV + lambdaL + 1e-5f); // This function is not intended to be running on Mobile,
// therefore epsilon is smaller than can be represented by half
#else
//上述公式的近似,簡化了sqrt,數(shù)學(xué)不正確但足夠接近
// Approximation of the above formulation (simplify the sqrt, not mathematically correct but close enough)
half a = roughness;
half lambdaV = NdotL * (NdotV * (1 - a) + a);
half lambdaL = NdotV * (NdotL * (1 - a) + a);
return 0.5f / (lambdaV + lambdaL + 1e-5f);
#endif
}
UnityStandardBRDF中GGX實(shí)現(xiàn)疑問
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。
相關(guān)閱讀更多精彩內(nèi)容
- 怎樣反思自己的教學(xué)——學(xué)習(xí)杜威《我們怎樣思維》有感 2015-01-13 14:56:52 來源:普寧市第三中學(xué)網(wǎng)...
- 小學(xué)語文修改病句的方法 修改病句是小學(xué)語文考試中常見的題型,在修改病句之前,我們應(yīng)該清晰的了解有哪些病句現(xiàn)象,下面...
- 下面選了最近十年里,十位名人所做的畢業(yè)演講。那么多的故事與經(jīng)歷,其實(shí)只想告訴你一件事: 面對迷茫和不確定的未來,我...
- 好久都沒有學(xué)習(xí) 一直在混 還有一百多天了 真的不知道能不能考上 總是想著明天要好好學(xué)習(xí) 可是一點(diǎn)執(zhí)行力都沒有 明天...