国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

第二十三章 Unity 材質(zhì)

這篇具有很好參考價值的文章主要介紹了第二十三章 Unity 材質(zhì)。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報違法"按鈕提交疑問。

3D模型主要是通過材質(zhì)(Material)和貼圖(Texture)來表現(xiàn)其精美的外表,說白了就是一張“畫皮”而已。我們之前的DirectX課程中介紹過材質(zhì),它實(shí)際就是對光的反射率,這樣簡單的設(shè)置并不能展現(xiàn)3D模型的外觀,因此就引入了貼圖來展示模型物體的表面紋理。請注意,貼圖是材質(zhì)的一部分,因?yàn)椴馁|(zhì)的本質(zhì)就是顏色,圖像是展示顏色的最好方式。但是,本章節(jié)要講的是PBR材質(zhì)。PBR全稱Physically Based Rendering,譯成中文是基于物理的渲染,是目前非常流行的一種擬真渲染技術(shù)。它是利用真實(shí)世界的原理和理論,通過各種數(shù)學(xué)方法推導(dǎo)或簡化或模擬出一系列渲染方程,并依賴計算機(jī)硬件和圖形API渲染出擬真畫面的技術(shù)。

unity3d 材質(zhì),Unity基礎(chǔ),unity,unity基礎(chǔ),unity入門,unity教程

以上是電影《戰(zhàn)斗天使》的畫面。主角阿麗塔是計算機(jī)通過PBR技術(shù)渲染出來的虛擬角色。對于游戲而言,PBR材質(zhì)已經(jīng)成為了次時代游戲的標(biāo)配。Unity從5.0開始就支持PBR材質(zhì)了。Unity內(nèi)部實(shí)現(xiàn)機(jī)制遵循了PBR的基本準(zhǔn)則,支持金屬度,表面粗糙度,能量守恒,菲涅爾反射,表面陰影遮蔽等特性。

接下來,我們?nèi)匀辉凇癓ightDemo”工程中創(chuàng)建一個新的場景SampleScene2.unity。材質(zhì)也是一個資源,所以我們要在Project視圖中右鍵選擇“Create”->“Material”,然后重命名為“TestMaterial”即可,截圖如下:

unity3d 材質(zhì),Unity基礎(chǔ),unity,unity基礎(chǔ),unity入門,unity教程

我們選中“TestMaterial”材質(zhì)文件,然后查看它的Inspector檢視面板,查看它的屬性

unity3d 材質(zhì),Unity基礎(chǔ),unity,unity基礎(chǔ),unity入門,unity教程

在我們之前的很多章節(jié)中,我們已經(jīng)簡單使用過材質(zhì)了。我們基本上都是設(shè)置一個顏色值而已。修改的方式就是點(diǎn)擊“Albedo”后面的顏色框,非常的簡單。接下來,我們就系統(tǒng)性的講解一下材質(zhì)的各個屬性。

首先是Shader的分類:standard和standard(Specular setup)

兩者區(qū)別是,standard使用了金屬模擬的外觀,而standard(specular setup)使用鏡面模擬的外觀。兩者都支持PBR材質(zhì),只是對應(yīng)的參數(shù)是不一樣的。我們一般使用標(biāo)準(zhǔn)著色器standard就行了。什么是Shader?它與材質(zhì)的關(guān)系是什么?在Unity中,材質(zhì)與Shader的關(guān)系很緊密,Shader是材質(zhì)的一部分,稱之為著色器。著色器的本質(zhì)就是一小段程序,它負(fù)責(zé)將網(wǎng)格模型和貼圖或者顏色按照指定的算法進(jìn)行渲染輸出。簡單的理解,Shader的作用是告訴GPU如何去繪制模型的每一個頂點(diǎn)的顏色以及最終每一個像素點(diǎn)的顏色。另外,Shader與渲染管線也有密切的關(guān)系。我們之前在DirectX課程中講過渲染管線的一些內(nèi)容,它是非常復(fù)雜的流程,包括坐標(biāo)系轉(zhuǎn)換,光照計算,光柵化等等。固定渲染管線已經(jīng)幫我們實(shí)現(xiàn)了大部分的流程,我們能夠做的大部分操作只是對模型的控制,但是如果想要實(shí)現(xiàn)逼真的現(xiàn)實(shí)世界的畫面,我們就需要對渲染管線的內(nèi)部流程進(jìn)行定制,也就是我們所說的可編程渲染管線。在Unity中就是通用渲染管線 (URP)和高清渲染管線 (HDRP)兩種。在這個渲染流程中,我們就可以使用Shader來實(shí)現(xiàn)基于物理的著色渲染(PBR)。可以說,Shader是可編程渲染管線中非常重要的一部分,也是實(shí)現(xiàn)AAA級游戲畫面的關(guān)鍵部分。

接下來就是“Rendering Mode”渲染模式,它有如下幾項(xiàng)可以選擇:Opaque(不透明),Cutout(裁剪),F(xiàn)ade(漸變),Transparent(透明)四種,他們影響的是透明效果,解釋如下:

1. Opaque此項(xiàng)為默認(rèn)設(shè)置,適用于沒有透明區(qū)域的普通固體對象,說白了就是不透明。

2. Cutout用于創(chuàng)建在不透明區(qū)域和透明區(qū)域之間具有硬邊的透明效果(只有透明和不透明)。

3. Transparent適用于渲染逼真的透明材質(zhì)(可以設(shè)置透明度),如玻璃效果。

4. Fade - 允許透明度值完全淡出對象,可對淡入或淡出的對象進(jìn)行動畫化。

我們以一張圖片為例,來說明“Rendering Mode”渲染模式的區(qū)別。

首先,我們創(chuàng)建一個Plane,然后調(diào)整它的參數(shù),如下

unity3d 材質(zhì),Unity基礎(chǔ),unity,unity基礎(chǔ),unity入門,unity教程

?unity3d 材質(zhì),Unity基礎(chǔ),unity,unity基礎(chǔ),unity入門,unity教程

接下來,我們將之前的一張照片(sunwukong.bmp)放置到Assets目錄下。

unity3d 材質(zhì),Unity基礎(chǔ),unity,unity基礎(chǔ),unity入門,unity教程

接下來,我們?nèi)绾螌D片添加材質(zhì)中呢?很簡單,只需要將圖片拖動到Albedo”前面的矩形框內(nèi),不是后面的顏色框哦。如下所示

unity3d 材質(zhì),Unity基礎(chǔ),unity,unity基礎(chǔ),unity入門,unity教程

同時,在Project面板中材質(zhì)文件也會發(fā)生變化,

unity3d 材質(zhì),Unity基礎(chǔ),unity,unity基礎(chǔ),unity入門,unity教程

接下來,我們?nèi)绾螌⒉馁|(zhì)賦予Plane平面上面呢?直接拖動材質(zhì)文件到Plane上或者其Inspector檢視面板中即可。這樣拖動的最終設(shè)置如下

unity3d 材質(zhì),Unity基礎(chǔ),unity,unity基礎(chǔ),unity入門,unity教程

平面Plane的Mesh Renderer組件用于渲染游戲?qū)ο?,它的第一個屬性就是Materials材質(zhì)組。我們拖動的效果就是將我們的材質(zhì)賦予了材質(zhì)組的第一個材質(zhì)元素?;氐轿覀僑cene場景中,就會發(fā)現(xiàn)Plane會顯示我們的圖片了。

unity3d 材質(zhì),Unity基礎(chǔ),unity,unity基礎(chǔ),unity入門,unity教程

可能是由于我們對平面Plane的旋轉(zhuǎn)是不對的,因此我們重新調(diào)整一下。

unity3d 材質(zhì),Unity基礎(chǔ),unity,unity基礎(chǔ),unity入門,unity教程

我們Play運(yùn)行工程,查看效果

unity3d 材質(zhì),Unity基礎(chǔ),unity,unity基礎(chǔ),unity入門,unity教程

這是“Rendering Mode”渲染模式默認(rèn)Opaque的效果(不透明)。

unity3d 材質(zhì),Unity基礎(chǔ),unity,unity基礎(chǔ),unity入門,unity教程

這是Cutout裁剪的效果。

unity3d 材質(zhì),Unity基礎(chǔ),unity,unity基礎(chǔ),unity入門,unity教程

這是Fade漸變效果(與Cutout裁剪類似)。

unity3d 材質(zhì),Unity基礎(chǔ),unity,unity基礎(chǔ),unity入門,unity教程

這是Transparent透明效果。

接下來我們重點(diǎn)說一下PBR相關(guān)的參數(shù):

unity3d 材質(zhì),Unity基礎(chǔ),unity,unity基礎(chǔ),unity入門,unity教程

Albedo:基礎(chǔ)色,可使用一個顏色值,也可用使用紋理貼圖。相當(dāng)于我們之前的漫反射顏色。

Metallic:金屬度,數(shù)值在0-1之間,也可以用金屬貼圖代替,此時Smoothness參數(shù)會消失。金屬度影響的是高光反射,數(shù)值越高,金屬感越強(qiáng)。金屬度貼圖本身是一張灰白圖,越白的地方,金屬度越強(qiáng)烈,越黑的地方金屬度越低。

Smoothness:光滑度,數(shù)值在0-1之間,表示材質(zhì)表面的粗糙程度,影響的是反射效果。

Smoothness Source:指定存儲光滑度數(shù)據(jù)的紋理通道,可選擇金屬度貼圖的Alpha通道或基礎(chǔ)色貼圖的Alpha通道。

請注意,金屬度和光滑度影響的是物體表面的反射情況,圖片可能無法看到這種效果。我們使用一個球體,并附加顏色值為(123,78,8,255)的橙黃色材質(zhì)來查看這兩個屬性的作用效果。默認(rèn)情況下,金屬度Metallic為0,且光滑度Smoothness為0.5,效果如下

unity3d 材質(zhì),Unity基礎(chǔ),unity,unity基礎(chǔ),unity入門,unity教程

我們可以清晰的看到高光部分,接下來我們調(diào)整光滑度Smoothness為0(金屬度也是0)

unity3d 材質(zhì),Unity基礎(chǔ),unity,unity基礎(chǔ),unity入門,unity教程

高光沒有了,接下來我們調(diào)整金屬度Metallic為0.5(光滑度是0)

unity3d 材質(zhì),Unity基礎(chǔ),unity,unity基礎(chǔ),unity入門,unity教程

顏色偏暗,接下來調(diào)整光滑度Smoothness為0.5(金屬度也是0.5)

unity3d 材質(zhì),Unity基礎(chǔ),unity,unity基礎(chǔ),unity入門,unity教程

現(xiàn)在就非常像一個金屬球了。

接下來介紹的是四個貼圖:Normal Map,Height Map,Occlusion和Detail Mask

1. Normal Map:法線貼圖;用于增加模型的表面細(xì)節(jié);只是改變的表面上的光照結(jié)果,并沒有真正改變表面上的形狀。通過法線貼圖使物體低模物體表面具有高度的細(xì)節(jié)效果。法線貼圖本身是一張藍(lán)色的凹凸圖。它的原理就是將模型表面的法線向量(x, y, z)存儲到一個 RGB 紋理貼圖中。法線貼圖一般都是通過高模烘焙得到的,并不是手繪的。

2. Height Map:高度圖,法線貼圖和高度貼圖都是凹凸貼圖(Bump Map)。它們都是用貼圖,去展現(xiàn)低模的表面細(xì)節(jié),但它們以不同的方式存儲數(shù)據(jù)。高度圖應(yīng)為灰度圖像,白色區(qū)域表示紋理的高區(qū)域,黑色表示低區(qū)域。與法線貼圖對比,這種技術(shù)更復(fù)雜,性能也更高。高度圖和法線貼圖可以一起搭配使用。

3. Occlusion 稱之為AO貼圖,負(fù)責(zé)環(huán)境光和環(huán)境光反射產(chǎn)生的間接光照,主要用于改善陰影,給場景(模型)更多的深度,有助于更好的表現(xiàn)模型的細(xì)節(jié)。AO 貼圖本身是一張灰白圖。

4. Detail Mask 細(xì)節(jié)遮罩貼圖,這個貼圖是配合“Secondary Maps”中的 Detail Albedo,Normal Map 兩張貼圖配合使用的,可以屏蔽模型的某些區(qū)域的細(xì)節(jié)紋理。這意味著您可以在某些區(qū)域顯示細(xì)節(jié)紋理,某些區(qū)域不顯示。這里順便說一下“Secondary Maps”,也就是細(xì)節(jié)貼圖,主要在近距離觀察時具有清晰的表面細(xì)節(jié)。

最后在介紹一個“Emission”,也就是讓模型自發(fā)光,這個比較簡單。

總結(jié),我們發(fā)現(xiàn)基于PBR材質(zhì)的渲染,能夠達(dá)到非常逼真的效果。但是,它需要很多的貼圖來支持,這就需要美工人員來進(jìn)行制作。現(xiàn)代游戲的研發(fā)流程:美術(shù)用建模軟件,建立高模模型,然后制作出法線貼圖。然后把這個法線貼圖,用于減面之后的低模模型上,這樣就能用普通貼圖,在低模上渲染出高模上的細(xì)節(jié)。在軟件使用上,除了我們?nèi)粘J褂玫?ds max和maya之外,推薦大家使用Substance 這款軟件。Substance是Allegorithmic公司的一套PBR美術(shù)制作工具,包括Substance Painter和Substance Designer兩款軟件。其中,Substance Painter是PBR貼圖繪制軟件,該軟件提供了大量的畫筆與材質(zhì),可以讓我們輕輕松松的導(dǎo)入自己的模型,然后繪制輸出PBR貼圖。2019年初,Adobe公司收購Substance Painter和Substance Designer的開發(fā)公司Allegorithmic。隨后,Adobe就發(fā)布了Substance 3D 全家桶,全新發(fā)布的 Adobe Substance 3D 系列應(yīng)用軟件由 Substance 套件進(jìn)化而來。例如,Substance 3D Stager是三維場景搭建軟件,Substance 3D Painter是次世代游戲貼圖繪制軟件,Substance 3D Sampler是真實(shí)材質(zhì)貼圖制作軟件,Substance 3D Designer是三維貼圖材質(zhì)制作軟件。目前使用比較多的是Adobe Substance 3D 2022版本,對應(yīng)是Substance Painter是7.4版本。文章來源地址http://www.zghlxwxcb.cn/news/detail-563595.html

到了這里,關(guān)于第二十三章 Unity 材質(zhì)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • [C國演義] 第二十三章

    [C國演義] 第二十三章

    力扣鏈接 求 刪除字符的ASCLL和的最小值 ? 正難則反 ? 求公共子序列的ASCLL和的最大值 兩個數(shù)組的dp問題 ? 分區(qū)間討論 ? dp[i][j] -- nums1數(shù)組的[0, i] 區(qū)間 和 nums2數(shù)組的[0, j] 區(qū)間, 公共子序列的ASCLL和的最大值 轉(zhuǎn)態(tài)轉(zhuǎn)移方程 — 根據(jù)最后一個位置進(jìn)行討論 遍歷順序 初始化 需

    2024年02月04日
    瀏覽(21)
  • Nodejs 第二十三章(Markdown 轉(zhuǎn) html)

    Nodejs 第二十三章(Markdown 轉(zhuǎn) html)

    Markdown 轉(zhuǎn)換html 是一個非常常見的需求 什么是 Markdown ? Markdown 是一種輕量級標(biāo)記語言,它允許人們使用易讀易寫的純文本格式編寫文檔。 我們需要用到三個庫實(shí)現(xiàn) EJS :一款強(qiáng)大的JavaScript模板引擎,它可以幫助我們在HTML中嵌入動態(tài)內(nèi)容。使用EJS,您可以輕松地將Markdown轉(zhuǎn)換為

    2024年02月04日
    瀏覽(19)
  • 第二十三章 原理篇:Pix2Seq

    第二十三章 原理篇:Pix2Seq

    大夏天我好像二陽了真是要命啊。 現(xiàn)在找到工作了,感覺很快樂,但是也有了壓力。 《論你靠吹牛混進(jìn)公司后該怎么熬過試用期》 希望自己能保持學(xué)習(xí)的習(xí)慣!加油! 參考教程: https://arxiv.org/pdf/2109.10852.pdf https://github.com/google-research/pix2seq https://zhuanlan.zhihu.com/p/421851551 ht

    2024年02月13日
    瀏覽(21)
  • 讀書筆記-《ON JAVA 中文版》-摘要26[第二十三章 注解]

    讀書筆記-《ON JAVA 中文版》-摘要26[第二十三章 注解]

    注解(也被稱為元數(shù)據(jù))為我們在代碼中添加信息提供了一種形式化的方式,使我們可以在稍后的某個時刻更容易的使用這些數(shù)據(jù)。 通過使用注解,你可以將元數(shù)據(jù)保存在 Java 源代碼中。并擁有如下有下優(yōu)勢:簡單易讀的代碼,編譯器類型檢查,使用 annotation API 為自己的注

    2024年02月07日
    瀏覽(20)
  • ChatGPT 與生成式 AI 的崛起:第二十六章到第三十三章

    ChatGPT 與生成式 AI 的崛起:第二十六章到第三十三章

    原文:Rise of Generative AI and ChatGPT 譯者:飛龍 協(xié)議:CC BY-NC-SA 4.0 恐怖分子、罪犯、警察、國防、執(zhí)法機(jī)構(gòu)、工程師、作家和學(xué)生等都在使用 ChatGPT,這是來自 OpenAI 的強(qiáng)大自然語言人工智能工具,作為他們?nèi)粘9ぷ鞯闹匾M成部分。自去年 11 月底發(fā)布以來,這種生成式人工智

    2024年01月24日
    瀏覽(224)
  • 【Unity3D日常開發(fā)】Unity3D中協(xié)程的使用

    【Unity3D日常開發(fā)】Unity3D中協(xié)程的使用

    推薦閱讀 CSDN主頁 GitHub開源地址 Unity3D插件分享 簡書地址 我的個人博客 大家好,我是佛系工程師 ☆恬靜的小魔龍☆ ,不定時更新Unity開發(fā)技巧,覺得有用記得一鍵三連哦。 最近有小伙伴問協(xié)程怎么用、怎么寫,我也是會用會寫,但是原理不是很明白。 學(xué)習(xí)了一下,總結(jié)出

    2024年02月12日
    瀏覽(31)
  • unity3D基礎(chǔ)操作之01--unity3d窗口界面介紹

    unity3D基礎(chǔ)操作之01--unity3d窗口界面介紹

    提示:文章寫完后,目錄可以自動生成,如何生成可參考右邊的幫助文檔 1、Scene場景編輯窗口; 2、Game游戲運(yùn)行窗口; 3、Hierarchy場景物體列表窗口; 4、Project項(xiàng)目資源列表窗口; 5、Inspector屬性編輯列表窗口; 6、其他常調(diào)節(jié)窗口 在屏幕左上方為場景編輯窗口Scene,在場景編

    2024年02月06日
    瀏覽(32)
  • 【Unity3D】Unity3D 軟件安裝 ( 注冊賬號并下載 Unity Hub | 安裝 Unity Hub | 獲取個人版授權(quán) | 中文環(huán)境設(shè)置 | 安裝 Unity3D 編輯器 )

    【Unity3D】Unity3D 軟件安裝 ( 注冊賬號并下載 Unity Hub | 安裝 Unity Hub | 獲取個人版授權(quán) | 中文環(huán)境設(shè)置 | 安裝 Unity3D 編輯器 )

    Unity 官方網(wǎng)站 : 英文 : https://unity.com 中文 : https://unity.cn 進(jìn)入 中文網(wǎng)站 https://unity.cn , 點(diǎn)擊右上角的 \\\" 下載 Unity \\\" 按鈕 ; 推薦下載 Unity3D 的長期支持版本 ; 點(diǎn)擊界面中的 \\\" 下載 Unity Hub \\\" 選項(xiàng) ; 根據(jù)你的系統(tǒng) , 選擇對應(yīng)的 Unity Hub , 我在 Windows 上開發(fā) , 因此選擇 \\\" Windows 下載 \\\"

    2024年01月25日
    瀏覽(120)
  • 【Unity3D-01】 記錄Unity3D調(diào)用外接攝像頭

    【Unity3D-01】 記錄Unity3D調(diào)用外接攝像頭

    最近想在Unity3D上調(diào)用一個攝像頭,通過查找資料發(fā)現(xiàn)仙魁XAN和八哥快走開的博客符合我的想法,實(shí)現(xiàn)起來也不難就嘗試了一下 2.1 在這個工程里新建Canvas 如下圖所示 然后下設(shè)RawImage為載體 2.2 在Assets里面新建一個腳本命名為PlaneManager.cs 代碼內(nèi)容如下(參考八哥快走開的博客)

    2024年02月04日
    瀏覽(30)
  • 【Unity3D小功能】Unity3D中實(shí)現(xiàn)Text顯示版本功能

    【Unity3D小功能】Unity3D中實(shí)現(xiàn)Text顯示版本功能

    推薦閱讀 CSDN主頁 GitHub開源地址 Unity3D插件分享 簡書地址 我的個人博客 大家好,我是佛系工程師 ☆恬靜的小魔龍☆ ,不定時更新Unity開發(fā)技巧,覺得有用記得一鍵三連哦。 在項(xiàng)目開發(fā)中,會遇到要控制版本的情況,比如說對比版本號,版本不對再更新版本的功能,這些就是

    2024年02月05日
    瀏覽(99)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包