最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(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ó)家法律
菏泽市| 兴仁县| 桑日县| 盱眙县| 扎鲁特旗| 泽普县| 磐石市| 鹤壁市| 云安县| 会东县| 平安县| 太保市| 宁夏| 淮北市| 甘泉县| 东乡族自治县| 全椒县| 林芝县| 水富县| 独山县| 昭通市| 上思县| 清新县| 昌邑市| 沙雅县| 凤庆县| 德保县| 德化县| 确山县| 溧水县| 上杭县| 许昌市| 太和县| 沭阳县| 海阳市| 莱芜市| 视频| 沅陵县| 右玉县| 万源市| 漳浦县|