国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

Unity中二次元渲染算法總匯

2021-11-24 18:54 作者:unity小能手  | 我要投稿

Unity在5.0版本升級(jí)了基于物理的著色器,能很大程度的提升游戲開發(fā)者在寫實(shí)類游戲中的畫面效果,可是在國(guó)內(nèi)強(qiáng)力游戲廠商都有自己的一套特殊渲染方式,比如知名的《崩壞3》。本篇文章就總結(jié)了博毅創(chuàng)為教育集團(tuán)在二次元渲染上的所有成就。

1.Ramp Map

原理,講Dot(Normal,LightDirection)從(-1,1)的范圍重映射到(0,1)之間。使用重映射的值對(duì)貼圖進(jìn)行采樣。Shader Forge實(shí)現(xiàn)如圖。除了在Dot(Normal,LightDirection)上可以采樣,我們還可以將邊緣光的值也納入考量,這樣就可以完整對(duì)一個(gè)2D貼圖進(jìn)行采樣。

主要使用范圍。將漫反射從純粹的黑白變化到具有風(fēng)格化感覺的貼圖上。


《軍團(tuán)要塞2》

使用的Ramp Map

2.外輪廓線

使用特殊的Pass繪制一遍物體。這個(gè)Pass不進(jìn)行背面剔除而是進(jìn)行正面剔除。

ShaderForge實(shí)現(xiàn)

輪廓線繪制代碼

Tags {

"RenderType"="Opaque"

}

Pass {

Name "Outline"

Tags {

}

Cull Front

CGPROGRAM

#pragma vertex vert

#pragma fragment frag

#include "UnityCG.cginc"

#pragma fragmentoption ARB_precision_hint_fastest

#pragma target 3.0

uniform float _OutLineWidth;

uniform float4 _OutLineColor;

struct VertexInput {

float4 vertex : POSITION;

float3 normal : NORMAL;

};

struct VertexOutput {

float4 pos : SV_POSITION;

};

VertexOutput vert (VertexInput v) {

VertexOutput o = (VertexOutput)0;

o.pos = UnityObjectToClipPos( float4(v.vertex.xyz + v.normal*_OutLineWidth,1) );

return o;

}

float4 frag(VertexOutput i) : COLOR {

return fixed4(_OutLineColor.rgb,0);

}

ENDCG

}

粘貼到subshader即可使用。

3.邊緣光RimLight

max(0,dot(viewDir, normal))^Strength在物體邊緣增加一層光效或用于對(duì)人物照明的補(bǔ)充。

Shader Forge實(shí)現(xiàn)

效果

4.Tone Based Shading

公式中α,β,Kblue,Kyellow,kd都是可調(diào)節(jié)參數(shù)。主要使用在

接近插畫類的渲染中,用于創(chuàng)建過渡自然的場(chǎng)景,比如《紀(jì)念碑谷》一類的

模擬日式賽璐璐畫法中陰影中的色彩和普通色彩分離的一個(gè)效果。色彩分為高光部,亮部,影部三部分。

現(xiàn)在資料中,GUILTY GEAR Xrd算實(shí)現(xiàn)得最好的。片元著色器部分偽代碼如下

dark = dot(normal,lightDir)*AO*Shadow;

Color_shadow = Color_Light*ShadowAdjust;

LightTerm = dark<threshlod?Color_shadow:Color_Light;

Shadow來源于陰影貼圖,Color_Light來源于底色貼圖.ShadowAdjust來源于底色處于陰影環(huán)境中的調(diào)整。

完整Color =LightTerm+Specluar;

Specular使用標(biāo)準(zhǔn)的Blinn-phong光照模型。

博毅創(chuàng)為VIP課程實(shí)踐中會(huì)將上述所有內(nèi)容整合起來完成GGXRD中的二次元渲染

更多課程資源請(qǐng)點(diǎn)擊:

https://bycwedu.vipwan.cn/promotion_channels/630597732

Unity中二次元渲染算法總匯的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
贵州省| 靖宇县| 盐亭县| 南江县| 徐汇区| 静乐县| 堆龙德庆县| 东丽区| 大方县| 边坝县| 灌阳县| 鲜城| 涟水县| 哈巴河县| 抚宁县| 隆化县| 如东县| 清涧县| 凌海市| 湖北省| 洪湖市| 厦门市| 大兴区| 德州市| 湟中县| 同德县| 三亚市| 昌邑市| 奉新县| 武邑县| 拉萨市| 桐城市| 伊宁市| 尤溪县| 库车县| 五大连池市| 岳阳县| 东港市| 灵武市| 佛教| 龙井市|