轉(zhuǎn)載自?VR設(shè)計(jì)云課堂?《Unity Shader入門精要》隨書彩色插圖(下)
《Unity Shader入門精要》隨書彩色插圖(下)
2017.06.15 12:07*?字?jǐn)?shù) 102?閱讀 509評(píng)論 0喜歡 3
第15章 使用噪聲
burn.png-429.1kB
圖15.1 箱子的消融效果
burn_noise.png-84.8kB
圖15.2 消融效果使用的噪聲紋理
water.png-722.5kB
圖15.3 包含菲涅耳反射的水面波動(dòng)效果哈街。在左圖中,視角方向和水面法線的夾角越大,反射效果越強(qiáng)泉褐。在右圖中,視角方向和水面法線的夾角越大掸犬,折射效果越強(qiáng)
cubemap.png-128.3kB
圖15.4 本例使用的立方體紋理
need-to-insert-img
water_noise.png-202kB
圖15.5 水波效果使用的噪聲紋理跟匆。左圖:噪聲紋理的灰度圖。右圖:由左圖生成的法線紋理
need-to-insert-img
fog.png-493.9kB
圖15.6 左圖:均勻霧效咱枉。右圖:使用噪聲紋理后的非均勻霧效
need-to-insert-img
fog_noise.jpg-13kB
圖15.7 本節(jié)使用的噪聲紋理
第16章 Unity中的渲染優(yōu)化技術(shù)
need-to-insert-img
render_static_window.png-156.1kB
圖16.1 Unity 5的渲染統(tǒng)計(jì)窗口
need-to-insert-img
profiler.png-122.5kB
圖16.2 使用Unity的性能分析器中的渲染區(qū)域來查看更多關(guān)于渲染的統(tǒng)計(jì)信息
need-to-insert-img
frame_debugger.png-84.3kB
圖16.3 使用幀調(diào)試器來查看單獨(dú)的draw call的繪制結(jié)果
need-to-insert-img
dynamic_batching0.png-138.9kB
圖16.4 動(dòng)態(tài)批處理
need-to-insert-img
dynamic_batching1.png-138.9kB
圖16.5 多光源對(duì)動(dòng)態(tài)批處理的影響結(jié)果
need-to-insert-img
static_batching0.png-112.9kB
圖16.6 靜態(tài)批處理前的渲染統(tǒng)計(jì)數(shù)據(jù)
need-to-insert-img
mark_static.png-22.3kB
圖16.7 把物體標(biāo)志為Static
need-to-insert-img
static_batching1.png-112.3kB
圖16.8 靜態(tài)批處理
need-to-insert-img
combined_mesh.png-152.1kB
圖16.9 靜態(tài)批處理中Unity會(huì)合并所有被標(biāo)識(shí)為“Static”的物體
need-to-insert-img
vbo.png-92kB
圖16.10 靜態(tài)批處理會(huì)占用更多的內(nèi)存。左圖:靜態(tài)批處理前的渲染統(tǒng)計(jì)數(shù)據(jù)徒恋。右圖:靜態(tài)批處理后的渲染統(tǒng)計(jì)數(shù)據(jù)
need-to-insert-img
static_batching2.png-113.6kB
圖16.11 處理其他逐像素光的Pass不會(huì)被靜態(tài)批處理
advance_texture.png-96.6kB
圖16.12 Unity的高級(jí)紋理設(shè)置面板
第17章 Surface Shader探秘
bumped_diffuse.png-164.7kB
圖17.1 表面著色器的例子蚕断。左圖:在一個(gè)平行光下的效果。右圖:添加了一個(gè)點(diǎn)光源(藍(lán)色)和一個(gè)聚光燈(紫色)后的效果
generated_code.png-28.9kB
圖17.2 查看表面著色器生成的代碼
pipeline.png-171.9kB
圖17.3 表面著色器的渲染計(jì)算流水線入挣。黃色:可以自定義的函數(shù)亿乳。灰色:Unity自動(dòng)生成的計(jì)算步驟
normal_extrusion.png-127.3kB
圖17.4 沿頂點(diǎn)法線對(duì)模型進(jìn)行膨脹径筏。左圖:膨脹前葛假。右圖:膨脹后
第18章 基于物理的渲染
reflect_refract.png-26.9kB
圖18.1 在理想的邊界處,折射率的突變會(huì)把光線分成兩個(gè)方向
rought_smooth.png-64.6kB
圖18.2 左圖:光滑表面的微平面的法線變化較小滋恬,反射光線的方向變化也更小聊训。右圖:粗糙表面的微平面的法線變化較大,反射光線的方向變化也更大
subsurface_scattered_light.png-36.3kB
圖18.3 微表面對(duì)光的折射恢氯。這些被折射的光中一部分被吸收带斑,一部分又被散射到外部
surface.png-42.5kB
圖18.4 次表面散射。左圖:次表面散射的光線會(huì)從不同于入射點(diǎn)的位置射出勋拟。如果這些距離值小于需要被著色的像素大小勋磕,那么渲染就可以完全在局部完成(右圖)。否則敢靡,就需要使用次表面散射渲染技術(shù)
brdf.png-47.1kB
圖18.5 BRDF描述的兩種現(xiàn)象挂滓。高光反射部分用于描述反射,漫反射部分用于描述次表面散射
m_h.png-90.5kB
圖18.6 (a)那些m=h的微面元會(huì)恰好把入射光從I反射到v上醋安,只有這部分微面元才可以添加到BRDF的計(jì)算中杂彭。(b)一部分滿足(a)的微面元會(huì)在I方向上被其他微面元遮擋住墓毒,它們不會(huì)接受到光照,因此會(huì)形成陰影亲怠。(c)還有一部分滿足(a)的微面元會(huì)在反射方向v上被其他微面元擋住所计,因此,這部分反射光也不會(huì)被看到
standard_shader.png-276.6kB
圖18.7 Standard Shader中前向渲染路徑使用的Pass(簡(jiǎn)化版本的PBS使用了VertexOutputBaseSimple等結(jié)構(gòu)體來代替相應(yīng)的結(jié)構(gòu)體)
calibration_charts.png-387.8kB
圖18.8 Unity提供的校準(zhǔn)表格团秽。左圖:金屬工作流使用的校準(zhǔn)表格主胧。右圖:高光反射工作流使用的校準(zhǔn)表格
metallic_workflow.png-181.6kB
圖18.9 使用金屬工作流來實(shí)現(xiàn)不同類型的材質(zhì)。左邊的球體:金屬材質(zhì)习勤。右邊的球體:塑料材質(zhì)
pbs_scene.png-625.7kB
圖18.10 在Unity 5中使用基于物理的渲染技術(shù)踪栋,場(chǎng)景在不同光照下的渲染結(jié)果
lighting_inspector.png-48.9kB
圖18.11 光照面板下的Scene標(biāo)簽頁
reflect_source.png-349.6kB
圖18.12 左圖:當(dāng)關(guān)閉場(chǎng)景中的所有光源并把環(huán)境光照強(qiáng)度設(shè)為0后,使用了Standard Shader的物體仍然具有光照效果图毕。右圖:在左圖的基礎(chǔ)上夷都,把反射源設(shè)置為空,使得物體不接受任何默認(rèn)的反射信息
direction_light.png-29.3kB
圖18.13 使用的平行光
need-to-insert-img
bounce_intensity.png-645.9kB
圖18.14 左圖:將Bounce Intensity設(shè)置為0予颤,物體不再受到間接光照的影響囤官,木屋內(nèi)陰影部分的可見細(xì)節(jié)很少。右圖:將Bounce Intensity設(shè)為8蛤虐,陰影部分的細(xì)節(jié)更加清楚
reflection_probe.png-615.8kB
圖18.15 左圖:未使用反射探針党饮。右圖:在場(chǎng)景中放置了兩個(gè)反射探針,注意墻上的盾牌與左圖的差別
interreflection.png-338.2kB
圖18.16 使用反射探針實(shí)現(xiàn)相互反射的效果
linear_space.png-611.4kB
圖18.17 左圖:在線性空間下的渲染結(jié)果驳庭。右圖:在伽馬空間下的渲染結(jié)果
gamma_chart.png-29.3kB
圖18.18 人眼更容易感知暗部區(qū)域的變換刑顺,而對(duì)較亮區(qū)域的變化比較不敏感
encoding_display_gamma.png-37.5kB
圖18.19 編碼伽馬和顯示伽馬
gamma_light.png-32.1kB
圖18.20 左圖:伽馬空間下的渲染結(jié)果。右圖:線性空間下的渲染結(jié)果
gamma_blur.png-85.2kB
圖18.21 左圖:伽馬空間下的混合結(jié)果饲常。右圖:線性空間下的混合結(jié)果
第19章 Unity 5更新了什么
show_fixed_function.png-29.5kB
圖19.1 在shader的導(dǎo)入面板中蹲堂,單擊圖中按鈕可查看Unity為該固定管線著色器生成的頂點(diǎn)/片元著色器代碼