指南:從通道解析到4K貼圖決策的完整工作流)
玩 3D 場景的人八成被 PBR 紋理貼圖這個概念繞暈過。網(wǎng)上能拿到的紋理包很多水泥地、磚石、碎石、草地、樹皮標(biāo)著 4K 的也不在少數(shù)??烧娴阶约喉椖坷锇戳鞒掏线M引擎、連上材質(zhì)節(jié)點燈光一打地面要么發(fā)灰要么假亮甚至比原來的純色還難看。地面在畫面里占的面積往往比想象中大得多。第三人稱游戲、建筑可視化、展廳漫游相機只要稍微壓低畫面一半以上都是地面。地面材質(zhì)一旦露怯整個場景的“完成度”立刻被拉低。我早期做場景時就卡過這個位置角色、建筑、燈光都調(diào)到能看了低頭一看地面還是紙片感不得已又重新返工。后來換成一套完整的 PBR 地面紋理——水泥地、土地、草地、碎石、磚石、樹皮分辨率上到 4K效果才算穩(wěn)住。這里我想說句實話換了之后不是顏色變鮮艷了而是光照開始“尊重”地面了。粗糙的地方不反光凹陷縫隙有陰影小石子在高光下有了立體感。這篇文章就圍繞這類“磚石碎石混凝土地面 PBR 紋理”項目展開把通道含義、引擎導(dǎo)入、4K 決策、坑點排查、長期復(fù)用一次講清楚。1. PBR 紋理貼圖真正解決的是“光照下成立”而不是“看起來像”1.1 一張漫反射圖為什么撐不起地面材質(zhì)很多新手第一次接觸紋理時會下意識地把貼圖當(dāng)成“一張好看的圖片”貼上去能看就行。這種思路放在十年前還行放到現(xiàn)在就會顯得非常不自然。問題出在“靜態(tài)明暗”和“動態(tài)光照”的區(qū)別上。一張普通漫反射圖里裂縫、凹槽、石子陰影都是畫在圖片里的。它不會隨著光源位置改變而改變。你把燈從左邊移到右邊理論上裂縫應(yīng)該從左側(cè)受光、右側(cè)出影但單張漫反射圖永遠(yuǎn)只會展示畫師畫好的那一種光照。到了 PBR 工作流里法線貼圖負(fù)責(zé)表面的微觀起伏粗糙度貼圖負(fù)責(zé)高光擴散方式環(huán)境光遮蔽負(fù)責(zé)縫隙和接觸陰影。這些通道加在一起材質(zhì)才真正“活”過來。對地面這樣的平面造型來說沒有模型幾何上的凹凸所有立體感幾乎都靠這些通道撐起來所以地面材質(zhì)對 PBR 通道的依賴尤其重。1.2 一個 PBR 紋理包里的通道各管什么事拿到一套紋理資源第一件事不是馬上導(dǎo)入引擎而是先看懂每個文件是什么通道、該接到哪個輸入端口。常見通道和職責(zé)可以整理成下面這張表。通道常用文件后綴作用容易忽略的點BaseColor / AlbedoBaseColor、Albedo、Diffuse表面的固有色不帶光照信息不是貼圖里帶陰影的“原畫”是平涂色NormalNormal、Nrm表面微觀起伏的向量信息接錯方向或通道整體視覺會反轉(zhuǎn)RoughnessRough、Rgh表面微觀粗糙程度接反之后高光完全失控MetallicMetal、Met金屬度水泥、石頭、木頭這類非金屬通常全黑AOAO、Occlusion環(huán)境光遮蔽給縫隙和接觸處加深能顯著提升立體感但太強會發(fā)悶Height / DisplacementHeight、Disp高度或位移信息地面大面積使用成本高通常做視差或局部置換這里要注意一個常見誤區(qū)Metallic 通道不是用來表達(dá)“表面看起來像金屬”的。它是用來告訴引擎“這個像素是否具備金屬反射特性”。一套水泥地紋理包里的 Metallic 圖幾乎應(yīng)該是一張純黑圖。如果你看到一套非金屬紋理包里沒有 Metallic 圖也是完全正常的導(dǎo)入時直接給黑色即可。1.3 為什么地面素材最容易暴露制作功力地面和墻面、天花板最大的區(qū)別在于觀察角度。人眼習(xí)慣平視對墻面的透視變形相對寬容但地面是在低于視線的位置被看到的透視感強、景深跨度大。同一張材質(zhì)近處能看到清晰的鋪裝細(xì)節(jié)遠(yuǎn)處則被壓縮成一條條色帶。如果通道不完整、法線強度不對、粗糙度貼圖沒接上遠(yuǎn)處的地面會要么泛白要么糊成一片。另一個原因是“熟悉感”。人每天走在各種地面上水泥、磚、泥土、碎石的樣子早就刻在直覺里。稍微有一點不對勁觀眾不需要懂技術(shù)也能察覺出“這個地面好假”。這種高度敏感的材質(zhì)類型恰恰是檢驗 PBR 工作流是否真的理解到位的最佳試金石。2. 這套紋理包覆蓋的常見場景與選材邏輯2.1 水泥、磚石、碎石、土地各自主打的畫面氛圍“磚石碎石混凝土地面 PBR 紋理貼圖”這類項目核心價值在于覆蓋了大多數(shù)室外地面需求。不同的材質(zhì)對應(yīng)完全不同的場景氣質(zhì)選材不能只看顏色。水泥和混凝土是城市和工業(yè)場景的主力。停車場、廠房、人行道、現(xiàn)代庭院都可以用。它的關(guān)鍵在于磨損程度和表面濕度干燥的水泥地面用普通 Roughness 圖即可雨后地面則需要額外降低 Roughness 值讓高光更集中。磚石適合需要歷史感和手工質(zhì)感的地方。老街區(qū)、庭院、古建周邊磚縫方向和鋪裝尺寸會成為畫面里的主導(dǎo)線條。使用磚石貼圖時要注意 tiling 設(shè)置如果單塊磚的比例和真實尺度差太多很容易一眼看穿。碎石是介于硬質(zhì)鋪裝和自然地貌之間的材質(zhì)。工地、機耕路、景觀步道、建筑外邊緣都適用。碎石的顆粒尺寸差別很大選擇時要以場景需要的尺度為準(zhǔn)不要只看圖片大感覺。土地和泥土則是自然場景的底子。鄉(xiāng)村、森林、農(nóng)田、荒野地形都離不開它。泥土材質(zhì)最需要關(guān)注的是濕度。干燥土地要保留粗糙度濕潤泥土要適當(dāng)降低 Roughness 并增加 AO 的對比才能做出雨后泥濘的質(zhì)感。2.2 樹皮、草地和石頭從地面清單里找到的延伸用法一個標(biāo)著“地面紋理”的包里出現(xiàn)樹皮、草地、石頭并不是湊數(shù)。樹皮可以用來做樹干、木樁、圍欄和建筑的小面積立面石頭貼圖可以用來做巖壁、石堆、擋墻也能配合地面做混合過渡草地紋理既可以做整片草坪也能在地形系統(tǒng)里作為草地層和其他材質(zhì)交叉混合。所以選材時不要被分類名限制住。先看紋理的尺度和色調(diào)再判斷能放進哪些表面。很多項目里的材質(zhì)浪費就是因為資源分類框死了使用方式。樹皮上有縱向紋理做地面時如果直接平鋪方向感可能很奇怪但反過來做樹干和木板卻非常合適。這就是“分類名”和“實際用法”之間的落差。2.3 按“地表敘事”選材質(zhì)而不是憑顏色選地面材質(zhì)時建議先建立一段“地表敘事”這個地面在故事里經(jīng)歷了什么??梢园聪旅孢@個順序拆解定義場景主題城市、鄉(xiāng)村、室內(nèi)、荒野、廢墟。定義時間和季節(jié)白天夜晚、春夏秋冬、雨后天晴。定義濕度干燥、濕潤、積水、泥濘。定義磨損全新、正常使用、重度磨損、被破壞。再反推需要的 BaseColor 基調(diào)、Roughness 范圍和 AO 強度。很多新手是反過來做的先看到一張顏色好看的貼圖就決定用它結(jié)果放進場景后和主題完全不搭。水泥地面如果場景設(shè)定是廢棄廠房那就要選有裂縫、污漬、邊角破損的材質(zhì)如果場景是新建商業(yè)廣場就要選干凈、平整、Roughness 偏高的版本。同一種材質(zhì)敘事不同選擇完全不同。3. 從下載到材質(zhì)亮起來四步落地流程3.1 導(dǎo)入前的文件夾和命名規(guī)范拿到紋理包后先不要著急往引擎里拖。建議先建立一個清晰的目錄結(jié)構(gòu)按“場景用途”或“表面類型”分類。比如Assets/ Textures/ Ground/ Brick/ Brick_BaseColor.png Brick_Normal.png Brick_Roughness.png Brick_AmbientOcclusion.png Concrete/ Concrete_BaseColor.png Concrete_Normal.png Concrete_Roughness.png命名統(tǒng)一用“主題_材質(zhì)_通道”三段式例如Terrain_Forest_Rock_Normal。別小看這一步當(dāng)項目里的紋理資源超過兩三百張時命名混亂會直接拖垮復(fù)用效率。尤其是多引擎協(xié)同的團隊一套一致的命名規(guī)范比任何一個快捷鍵都值錢。導(dǎo)入前還要確認(rèn)一件重要的事這張紋理是不是無縫可平鋪的。很多 PBR 紋理包會明確標(biāo)注“Seamless Tileable”。如果沒標(biāo)注在引擎里鋪開做 tiling 前先用看圖工具或圖像處理軟件檢查左右邊緣、上下邊緣是否能自然接上。4K 大圖如果是有縫的鋪開之后會非常刺眼。3.2 Unity 里的 PBR 材質(zhì)搭建以 URP 管線為例一個最小可運行的 PBR 材質(zhì)搭建步驟如下在 Assets 下新建Materials文件夾右鍵創(chuàng)建 Material命名遵循Mat_場景_材質(zhì)格式。把 Shader 設(shè)為Universal Render Pipeline/Lit這是 URP 下的標(biāo)準(zhǔn) PBR Shader。在 Base Map 槽位放入 BaseColor 貼圖。把 Normal Map 貼圖拖到 Normal Map 槽位。導(dǎo)入器會自動識別為法線貼圖如果沒識別在紋理導(dǎo)入面板里勾選 Normal Map。把 Roughness 貼圖連到 Metallic / Smoothness 區(qū)域。注意Unity 的 PBR Shader 默認(rèn)接收的是 Smoothness 參數(shù)而紋理包里的通常叫 Roughness。Roughness 和 Smoothness 是反比關(guān)系轉(zhuǎn)換公式是Smoothness 1 - Roughness。如果你直接把 Roughness 貼圖放進 Smoothness 槽位視覺上會完全反掉需要用工具或自定義 Shader 做取反。Metallic 槽位放一張純黑貼圖或者把金屬度參數(shù)拉到 0。在 Tiling 里設(shè)置平鋪值先給 2 再按效果調(diào)整。這里需要單獨提一句在 URP 的 Lit Shader 里可以配置 Mask Map它把 Metallic、AO、Smoothness、Detail Mask 合并到一張貼圖的不同通道以此來減少紋理采樣次數(shù)。如果紋理包沒有提供 Mask Map可以用圖像處理工具的通道合成功能自己生成。這是一個能在性能和安全范圍內(nèi)優(yōu)化比較大的通用做法。3.3 Unreal 和 Blender 的參考做法Unreal 里方法類似但不依賴導(dǎo)入器的“Normal Map”勾選會自動把非顏色貼圖按線性空間處理。搭建時創(chuàng)建 Material用 Texture Sample 節(jié)點分別連到 Base Color、Normal、Roughness、Metallic 端口最后套一層 Material Instance 給不同地塊做參數(shù)變體。Blender 里則是用 Principled BSDF 這個著色器。把 BaseColor 圖片節(jié)點連到 Base Color 輸入Normal 圖片節(jié)點設(shè)置 Color Space 為 Non-Color再經(jīng)由 Normal Map 節(jié)點連到 Normal 輸入Roughness 圖片節(jié)點設(shè)置 Non-Color直接連到 Roughness 輸入。這里的關(guān)鍵還是那句話法線、粗糙度、金屬度這類通道不是顏色信息輸入節(jié)點時不要選 sRGB 顏色空間。3.4 先跑一個最小驗證場景無論用哪個引擎建議先建一個最小驗證場景而不是一上來就鋪整個關(guān)卡。用一個 10 米 × 10 米的平面掛上材質(zhì)加一盞方向光和一個天空盒再把相機壓低到正常視野高度看看地面效果。驗證內(nèi)容按順序來底色對不對BaseColor 是否為場景需要的明度和色調(diào)。凹凸是否合理法線強度默認(rèn) 1 時是否過于夸張或太弱。高光是否自然Roughness 接入后干燥地面不應(yīng)該出現(xiàn)塑料感。平鋪是否均勻tiling 值是否造成拉伸或過密。接縫是否可見大面積平鋪后貼圖左右邊緣是否自然過渡。這幾個檢查項全部通過再把它放到真實場景里。別跳過這步地面是整個場景最容易返工的部分提前花十分鐘驗證能省下后面半天調(diào)參。4. 4K 不是萬能尺寸、平鋪、壓縮的決策邏輯4.1 什么場景真的值得上 4K項目名里帶“4K”確實很吸引人但 4K 不是默認(rèn)選項它只是一種資源密度選擇。真正值得上 4K 的場景主要有幾類相機可以近距離貼近地面的項目比如巡邏、撿拾、過場動畫需要裁切畫面或者做鏡頭特寫的展示項目以及大面積地面材質(zhì)在游戲視角里占比較高、但貼圖平鋪次數(shù)較少的場景。反過來如果鏡頭主要跟著角色走地面在畫面里只是背景色塊那 2K 甚至 1K 就夠。移動端項目更不建議無腦上 4K帶寬和內(nèi)存的限制遠(yuǎn)比 PC 端明顯。盲目堆 4K最終換來的是加載變慢、發(fā)熱、卡頓畫面上卻看不出明顯差別。使用場景推薦紋理尺寸說明遠(yuǎn)景地形背景1K~2K遠(yuǎn)距離像素密度低4K 浪費顯存角色可走到的近距離地面2K~4K特寫時需要保留紋理細(xì)節(jié)電影鏡頭 / 展示渲染4K允許裁切和放大畫面移動端項目1K~2K帶寬和內(nèi)存限制嚴(yán)格陰影和反射貼圖1K反射里大量遠(yuǎn)景場景高分辨率收益低4.2 tiling 才是地面真實感的分水嶺4K 再清晰如果 tiling 設(shè)置不對照樣一眼假。這里要先糾正一個常見誤解紋理貼圖不是“一整張地面照片”它是“一塊材料的樣本”。要讓一整片地面都顯示紋理必須讓這張樣本在表面上重復(fù)平鋪。重復(fù)得越多單位面積里能看到的分辨率就越低重復(fù)得太少又會造成像素拉伸。更關(guān)鍵的是 tiling 比例要貼合“真實尺度”。想象一個 10 米 × 10 米的平面tiling 設(shè)成 2那么每個紋理單元覆蓋 5 米。如果同樣貼圖放在一個 50 米 × 50 米的平面上tiling 還是 2每個單元就覆蓋 25 米磚塊尺度被整體放大了。所以設(shè)置 tiling 時要想的不是“數(shù)值越大越好”而是“一個紋理單元在現(xiàn)實世界中應(yīng)該對應(yīng)多大面積”。實際操作中可以按“單位距離內(nèi)有多少個鋪裝單元”來反推。比如水泥地面分倉是 0.5 米一塊紋理圖里橫向能看到 4 個分倉那么這個紋理單元應(yīng)該覆蓋 2 米。據(jù)此計算 tiling才能保證材質(zhì)使用后和真實世界尺度一致。4.3 4K 的內(nèi)存、帶寬和平臺成本4K 的成本是實打?qū)嵉?。一張未壓縮的 4096 × 4096 RGBA 紋理內(nèi)存占用約 67MB加上 mipmap 鏈之后單張約 89MB。一套五張通道貼圖未壓縮情況下接近 450MB。這個數(shù)字在 PC 端尚且可接受在移動端完全是災(zāi)難。經(jīng)過平臺壓縮后數(shù)字會大幅下降。BC7 或 DXT5 這類格式下一張 4K 貼圖約 16MB五張約 80MB移動端用 ASTC 會再降一些。但即便壓縮后如果場景里同時有十幾張 4K 地面貼圖內(nèi)存壓力依然明顯。所以這里有一個工程經(jīng)驗紋理尺寸不是越高越好而是在“當(dāng)前鏡頭到材質(zhì)的最短距離”和“允許的內(nèi)存預(yù)算”之間取平衡。一個關(guān)卡里遠(yuǎn)處地面用 1K~2K近處關(guān)鍵區(qū)域用 4K其余區(qū)域用 2K才是性價比最高的策略。4.4 壓縮與色彩空間的常見坑把 4K 貼圖導(dǎo)入引擎后最常見的坑是色彩空間設(shè)置錯誤。BaseColor 是顏色信息導(dǎo)入時應(yīng)當(dāng)按 sRGB 處理Normal、Roughness、Metallic、AO 是數(shù)值信息應(yīng)當(dāng)按線性空間處理。Unity 里 BaseColor 的 sRGB 默認(rèn)為開啟Normal 貼圖勾選 Normal Map 后會自動處理但 Roughness、Metallic、AO 這些圖需要手動關(guān)掉 sRGB。很多人漏了這一步導(dǎo)致地面在暗部發(fā)灰、高光位置偏色。壓縮格式也要注意。法線貼圖如果壓縮到 DXT1 這類 4 bit 格式會出現(xiàn)明顯的色彩條紋和細(xì)節(jié)丟失因為法線數(shù)值的精度被過度壓損。PC 端建議用 BC5 或 BC7 保存法線圖移動端用 ASTC 時要選擇合適的 block 尺寸不要無腦拉高壓縮比。mipmap 和各項異性過濾同樣會影響 4K 貼圖的實際表現(xiàn)。如果 mipmap 設(shè)置不當(dāng)遠(yuǎn)處地面會出現(xiàn)嚴(yán)重閃爍各向異性過濾太低斜視角下的路面會變得模糊模糊。建議導(dǎo)入 4K 地面貼圖時開啟 mipmap并把 Aniso 設(shè)為 8 或 16。5. 從報錯到發(fā)灰一張地面材質(zhì)的排查鏈路5.1 最常見通道接錯、法線方向、貼圖拉伸地面材質(zhì)出問題時現(xiàn)象往往就幾類發(fā)灰、發(fā)悶、泛白、接縫明顯、遠(yuǎn)處閃爍、一塊一塊模糊。但背后的原因千奇百怪需要按鏈路排查。“發(fā)灰發(fā)悶”最常見的原因是法線強度過高、AO 過強或者 Roughness 根本沒接上。法線強度過高會讓表面的微型起伏看起來像被人為強化過反而失去自然感。AO 過強會讓地面暗部發(fā)黑發(fā)悶。Roughness 沒接入相當(dāng)于引擎拿默認(rèn)參數(shù)渲染效果當(dāng)然不對?!胺喊紫袼芰稀蓖ǔJ?Smoothness 和 Roughness 方向搞反了。如果紋理包提供的是 Roughness而引擎 Shader 默認(rèn)接收 Smoothness不取反直接連結(jié)果就是地面像抹了一層油高光劇烈收縮?!鞍纪狗较蚍戳恕睅缀醵际欠ň€貼圖的 Green 通道方向問題??梢詸z查紋理導(dǎo)入設(shè)置里是否勾選 Normal Map以及在引擎里翻轉(zhuǎn) Y 方向試試?!耙粔K一塊模糊”則多半是 UV 拉伸。地面網(wǎng)格如果是大尺寸平面但 UV 沒有正確展開或者生成時 UV 密度不均勻貼圖就會局部拉花。這種情況光調(diào) tiling 沒用需要回到模型側(cè)檢查 UV。5.2 按“現(xiàn)象 → 輸入 → 環(huán)境 → 參數(shù) → 工具限制”排查排查地面材質(zhì)問題不要一上來就改參數(shù)。先把問題拆到正確的層級??船F(xiàn)象是發(fā)灰、泛白、拉伸、接縫、閃爍還是直接報錯先明確你到底在解決哪個問題??摧斎胭N圖文件本身是否完整通道內(nèi)容是否正確文件名和引擎里引用的是否一致有沒有把 Normal 圖誤放到 BaseColor 槽位??喘h(huán)境引擎版本、渲染管線、光照強度、后處理設(shè)置、陰影質(zhì)量。同一張貼圖在不同管線下的表現(xiàn)差異可能非常大??磪?shù)Tiling、Smoothness Source、法線強度、AO 強度、Mipmap、各向異性過濾按變量逐個調(diào)整。最后看工具限制當(dāng)前渲染管線對 Mask Map 的要求紋理包的壓縮格式是否適合當(dāng)前平臺法線貼圖在所選壓縮格式下是否有精度損失。這個順序本質(zhì)上是把問題從“外部到內(nèi)部”、從“輸入到輸出”逐層隔離。先確認(rèn)輸入沒問題再看環(huán)境是不是干擾項最后才動參數(shù)。很多人習(xí)慣直接改參數(shù)結(jié)果改了半天發(fā)現(xiàn)是導(dǎo)入時通道貼錯白費時間。5.3 一組實際問題與建議修復(fù)方向現(xiàn)象常見原因建議處理材質(zhì)發(fā)灰、發(fā)悶法線強度過高 / AO 過強 / Roughness 未接入降低法線強度到 0.3~0.5AO 調(diào)到 0.5~0.8檢查 Roughness 是否正常連接地面泛白像塑料Smoothness 和 Roughness 方向反了對照引擎 Shader 文檔做1 - Roughness取反操作凹凸方向反向法線貼圖 Green 通道方向不對勾選 Normal Map在導(dǎo)入器里翻轉(zhuǎn) Green 通道遠(yuǎn)處紋理閃爍mipmap 未開 / 各向異性過濾太低導(dǎo)入設(shè)置開啟 mipmapAniso 設(shè)為 8~16明顯接縫紋理非無縫 / UV 分割換成無縫紋理或用世界坐標(biāo) / triplanar 采樣局部拉花模糊UV 拉伸、密度不均回到模型檢查 UV確保地面網(wǎng)格 UV 密度一致場景卡頓4K 貼圖過多 / 壓縮格式偏大遠(yuǎn)景降到 2K壓縮為 BC7 或 ASTC限制同屏 4K 貼圖數(shù)量排查地面材質(zhì)問題時最快的做法不是一個個參數(shù)試而是先把 Roughness 拉到中間值、法線強度降到 0.3、AO 強度降到 0、關(guān)掉后處理里的花哨效果看基礎(chǔ)視覺效果對不對。如果基礎(chǔ)對了再一檔一檔加回來。這樣可以快速定位是哪個變量出了問題。6. 從單次應(yīng)用到大面積地表如何沉淀自己的紋理庫6.1 用“材質(zhì)預(yù)設(shè) 實例參數(shù)”替代每次手動調(diào)很多人的項目里每換一個場景就重新創(chuàng)建一份材質(zhì)參數(shù)從頭設(shè)一遍。這套做法短期內(nèi)沒什么問題但項目一長十幾個材質(zhì)之間往往是同一套紋理的參數(shù)變體維護成本極高。更合理的做法是把一套 PBR 紋理做成唯一的基礎(chǔ)材質(zhì)然后通過“材質(zhì)實例”或者參數(shù)化方式復(fù)用。Unreal 里的 Material Instance 天然支持這個思路。Unity 里可以通過 Material Variant或者用 ScriptableObject 保存一組參數(shù)配置運行時動態(tài)生成材質(zhì)。這樣當(dāng)你發(fā)現(xiàn)某一類地面的 AO 強度需要整體調(diào)低時只需要改基礎(chǔ)材質(zhì)所有實例同步更新而不用逐個查材質(zhì)節(jié)點。紋理庫的核心價值不是“擁有很多貼圖”而是“每張貼圖都能被一套可復(fù)用的參數(shù)體系快速引用”。6.2 記錄材質(zhì)使用場景而不是堆文件一個紋理包下載下來直接丟進工程里時間長了幾乎不可能記得每張貼圖的應(yīng)用邊界。這里建議建立一份“材質(zhì)卡”一本書都行一個表格也行。記錄字段包括文件名、通道來源、分辨率、是否無縫、推薦的 tiling 尺度、適用場景、不適用場景、備注。字段內(nèi)容示例文件名Concrete_Worn_4K通道BaseColor / Normal / Roughness / AO分辨率4096 × 4096是否無縫是推薦 Tiling0.5m 分倉1 紋理單元 2m適用場景廢棄廠房、停車場、城市人行道不適用場景雨后濕潤地面、科幻全息地面?zhèn)渥oughness 偏低適合做雨后濕潤舊地面這個表不是給項目匯報用的是給你自己用的。它把一次性的調(diào)參經(jīng)驗沉淀成可復(fù)用的知識資產(chǎn)。下次做類似場景直接查表就知道該用哪個資源、tiling 起步值是多少然后把剩余精力用在光照和場景敘事上。6.3 認(rèn)清邊界紋理解決不了所有地面問題最后必須說清楚一個邊界PBR 紋理貼圖是材質(zhì)的基礎(chǔ)但不是萬能的。如果地面的凹凸起伏很大比如亂石灘、溝壑、車轍靠一張法線貼圖做出來的“假凹凸”在高光下會穿幫尤其是掠射角鏡頭下。這類地面必須配合幾何置換、雕刻模型或額外的網(wǎng)格細(xì)節(jié)才能達(dá)到真實效果。如果鏡頭距離地面太近比如角色踩在石頭上第一人稱視角那僅靠一張 4K 貼圖也不夠。石頭邊緣需要模型轉(zhuǎn)折縫隙需要 AO 補貼接觸處需要 decal 或貼花來處理。如果項目是 stylized 風(fēng)格PBR 紋理包的物理參數(shù)反而不一定適用。風(fēng)格化場景往往要壓平法線、降低對比度、弱化真實粗糙度才能和其他美術(shù)資產(chǎn)保持一致。紋理只是素材不是風(fēng)格。還有一點任何材質(zhì)都救不了壞燈光。同一套 PBR 紋理在合理的燈光環(huán)境下非常真實在只有一個純白點光源的平光環(huán)境里依然平平無奇。地面材質(zhì)發(fā)揮的前提是天空、主光、補光、陰影方向都成立。地面材質(zhì)這件事表面看是資源導(dǎo)入和技術(shù)參數(shù)實質(zhì)上是一個持續(xù)積累的過程。每一個紋理包下載下來關(guān)鍵不是記住它能做多少表面而是理解它的通道能做什么、不能做什么以及在什么場景下使用它。4K 不是萬能鑰匙PBR 也不是。真正的價值在于你建立了一套可以反復(fù)使用、可以驗證、可以改進的材質(zhì)流程。如果這篇文章只留一句話我會說先從一個小平面、一張 BaseColor、一塊 Roughness 開始把最基礎(chǔ)的流程跑通再考慮 4K、再考慮大面積鋪場景。等你在項目里真正能把一塊普通水泥地做出遠(yuǎn)近都有細(xì)節(jié)、光線下有起伏質(zhì)感的效果時你對“材質(zhì)”這個詞的理解就已經(jīng)和剛下載紋理包時完全不同了。