欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

詳解Unity中的ShaderGraph入門使用教程

 更新時間:2021年07月01日 09:17:08   作者:陳言必行  
Unity2018版本之后推出了一個可編程渲染管線工具ShaderGraph,讓我們可以通過可視化界面拖拽來實現(xiàn)著色器的創(chuàng)建和編輯,今天重點給大家介紹Unity中的ShaderGraph入門使用教程,需要的朋友參考下吧

一,ShaderGraph 簡介

簡介:
Unity2018版本之后推出了一個可編程渲染管線工具ShaderGraph,讓我們可以通過可視化界面拖拽來實現(xiàn)著色器的創(chuàng)建和編輯。

官方話術(shù):

Shader Graph 使您能夠直觀地構(gòu)建著色器。您無需編寫代碼,而是在圖形框架中創(chuàng)建和連接節(jié)點。Shader Graph 提供反映您的更改的即時反饋,并且對于不熟悉著色器創(chuàng)建的用戶來說非常簡單。

Shader Graph 僅與可編寫腳本的渲染管線 (SRP) 兼容,即高清晰度渲染管線 (HDRP) 和通用渲染管線 (URP)。這兩個 SRP 在 Unity 2018.1 及更高版本中可用。傳統(tǒng)的內(nèi)置渲染管線不支持 Shader Graph。

Shader Graph是基于可編程流水線, 一種通過節(jié)點圖的方式,來實現(xiàn)可視化的Shader的編程。
有了它之后我們就不用再編寫大量的代碼了,不用考慮語法和錯誤調(diào)試了。

使用版本:推薦使用Unity2019.1以上的版本。

二,ShaderGraph 導(dǎo)入

 2.1 現(xiàn)有工程導(dǎo)入

點擊”Windows“ --> ”Package Manager“ --> “Shader Graph” --> ”Install“ ,點擊后等待導(dǎo)入完成即可:

同理在點擊Package Manager面板找到 --> “Lightweight RP” 然后點擊”Install“導(dǎo)入等待導(dǎo)入完成即可:

2.2 導(dǎo)入指定版本

使用2.1的方式添加,只能導(dǎo)入最新版本的插件,使用下面這個方式可導(dǎo)入一個指定版本:
打開工程目錄,找到“Package Manager” 文件夾下的“manifest.json”文件,打開后添加:(注意要指定正確版本)

"com.unity.render-pipelines.lightweight": "7.5.3",
"com.unity.shadergraph": "7.5.3",

2.3 新工程導(dǎo)入

選擇LWRP或者HDRP的話,會自動附帶相關(guān)插件,并且Unity已經(jīng)幫我們進(jìn)行了工程基礎(chǔ)配置,下面我們要說的工程基礎(chǔ)配置:

三,ShaderGraph 配置

若你是以上面2.3新工程的形式創(chuàng)建的工程,則不需要進(jìn)行下述配置

3.1 基本設(shè)置

通過菜單"Asset" --> “Create” --> “Rendering” --> “Universal Render Popeline” --> “Pipeline Asset(Forward Renderer)” 創(chuàng)建URP渲染管線配置

在2019.3版本之后,Unity將輕量渲染管線LWRP重命名為通用渲染管線URP。 所以雖然我們上面導(dǎo)入的是“Lightweight RP”包,但是這邊創(chuàng)建的時候顯示的是“Universal Render Pipeline”:

設(shè)置URP渲染管線配置到“Edit” --> “Project Setting” --> “Graphics” --> “Scriptable Render Pipeline Settings” 如下圖所示:

3.2 創(chuàng)建ShaderGraph示例

在“Project”面板右鍵 --> “Create” --> “Shader” --> “Unlit Graph”; 這時我們可以看到Shader面板上多了幾個后綴為Graph的選項:

選擇我們創(chuàng)建一個“Unlit Graph”看下效果:

“雙擊” 就可打開我們創(chuàng)建“Unlit Shader Graph”的可編輯面板:


四,ShaderGraph 面板

 4.1 可編輯面板介紹

為了方便操作,此編輯面板支持多開,支持直接從其他面板上復(fù)制節(jié)點

主節(jié)點:決定著色器輸出的最終連接:(所有節(jié)點經(jīng)過計算后都必須連接到主節(jié)點上,才會得到應(yīng)用)

預(yù)覽界面:在這里“右鍵”,可隨意旋轉(zhuǎn),縮放,以及替換網(wǎng)格:

黑板:在單個收集視圖中包含所有著色器屬性的區(qū)域。使用Blackboard 添加,刪除,重命名和排序:(創(chuàng)建屬性,然后拖拽到主編輯空白處,形成在材質(zhì)球上可編輯公開屬性)

創(chuàng)建節(jié)點:空白處“右鍵” --> “Create Node” --> 選擇要創(chuàng)建的節(jié)點:(可選擇,可搜索找到要用的節(jié)點,子節(jié)點非常多,使用過程中慢慢累積)

編輯節(jié)點:創(chuàng)建了一個“Color” 節(jié)點,在節(jié)點上右鍵,可以看到復(fù)制,刪除等操作信息

連接節(jié)點:單擊節(jié)點右側(cè)“Out”輸出,拖拽到對應(yīng)的輸入上:


五,ShaderGraph 使用

5.1 創(chuàng)建UnlitGraph并創(chuàng)建貼圖節(jié)點

在“Project”面板右鍵 --> “Create” --> “Shader” --> “Unlit Graph”; 詳細(xì)圖解創(chuàng)建步驟見上文3.2。

雙擊創(chuàng)建好的"Unlit Graph",打開編輯界面,空白處“右鍵” 選擇 --> “Create Node” —-> 搜索框搜索“Texture” 點擊創(chuàng)建“Sample Texture 2D”:

5.2 給貼圖節(jié)點賦值并連接到主節(jié)點

將Texture節(jié)點的輸出,拖拽到主節(jié)點的輸入:

給Texture進(jìn)行賦值:(和其他組件使用形式一樣,點擊“原點”選擇Texture)

5.3 保存并使用ShaderGraph

點擊面板左上角的“Save Asset”,進(jìn)行保存

然后創(chuàng)建材質(zhì)球,將其Shader 指定為剛剛保存的“UnlitShaderGraph”:(可直接拖拽賦值)

最后在場景中創(chuàng)建一個Cube,并將其材質(zhì)球指定為剛創(chuàng)建的:(也可直接拖拽賦值)

這樣就完成了一個Shader的從創(chuàng)建到應(yīng)用整個流程啦~

5.4 公開屬性使其在材質(zhì)球上編輯

細(xì)心的你可能已經(jīng)發(fā)現(xiàn)了,在上圖材質(zhì)球使用的貼圖位置是不能進(jìn)行修改的:

下面我們就將貼圖屬性公開為外部可修改的。

在“Blackboard”面板點擊“+”號,添加"Texture 2D"屬性,然后將其拖拽到空白編輯區(qū)域,最后將其輸出節(jié)點連接到貼圖輸入節(jié)點上:

然后點擊下右上角的“Save Asset”保存一下,再次點擊到材質(zhì)球上,就可以看到貼圖位置是空的,并且是可修改的了:

六,ShaderGraph 總結(jié)

本文對ShaderGraph進(jìn)行了簡單介紹,使用時需要的工程配置,以及ShaderGraph的編輯面板操作,最后通過一個簡單示例進(jìn)行整體流程的梳理。

使用ShaderGraph前提條件:

導(dǎo)入ShaderGraph插件導(dǎo)入URP(通用渲染管線)或者HDRP(高清渲染管線)創(chuàng)建Pipeline Assets并配置到Graphics面板

完成上述準(zhǔn)備工作,就可以愉快的使用ShaderGraph了。

到此這篇關(guān)于Unity 之 ShaderGraph入門使用詳解的文章就介紹到這了,更多相關(guān)Unity ShaderGraph使用內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • C#中動態(tài)數(shù)組用法實例

    C#中動態(tài)數(shù)組用法實例

    這篇文章主要介紹了C#中動態(tài)數(shù)組用法,實例分析了C#中ArrayList實現(xiàn)動態(tài)數(shù)組的技巧,非常具有實用價值,需要的朋友可以參考下
    2015-04-04
  • C# WCF簡單入門圖文教程(VS2010版)

    C# WCF簡單入門圖文教程(VS2010版)

    這篇文章主要介紹了WCF簡單入門圖文教程,版本是VS2010版,幫助大家輕松學(xué)習(xí)了解DataContract、ServiceContract等特性,感興趣的小伙伴們可以參考一下
    2016-03-03
  • C#使用winform實現(xiàn)進(jìn)度條效果

    C#使用winform實現(xiàn)進(jìn)度條效果

    這篇文章主要為大家詳細(xì)介紹了C#使用winform實現(xiàn)進(jìn)度條效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-07-07
  • 探討:關(guān)閉瀏覽器后,php腳本會不會繼續(xù)運行

    探討:關(guān)閉瀏覽器后,php腳本會不會繼續(xù)運行

    本篇文章是對關(guān)閉瀏覽器后,php腳本會不會繼續(xù)運行進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-06-06
  • unity shader實現(xiàn)玻璃折射效果

    unity shader實現(xiàn)玻璃折射效果

    這篇文章主要為大家詳細(xì)介紹了unity shader實現(xiàn)玻璃折射效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-04-04
  • C#簡單生成縮略圖的方法

    C#簡單生成縮略圖的方法

    這篇文章主要介紹了C#簡單生成縮略圖的方法,涉及C#操作圖片的技巧,非常具有實用價值,需要的朋友可以參考下
    2015-03-03
  • C#實現(xiàn)根據(jù)銀行卡卡號判斷銀行名

    C#實現(xiàn)根據(jù)銀行卡卡號判斷銀行名

    這篇文章主要介紹了C#實現(xiàn)根據(jù)銀行卡卡號判斷銀行名,是從其他網(wǎng)友的java程序改編而來,有需要的小伙伴可以參考下。
    2015-07-07
  • c# RSA非對稱加解密及XML&PEM格式互換方案

    c# RSA非對稱加解密及XML&PEM格式互換方案

    這篇文章主要介紹了c# RSA非對稱加解密及XML&PEM格式互換方案,幫助大家更好的理解和使用c#,感興趣的朋友可以了解下
    2020-12-12
  • 深入理解StringBuilder的使用方法

    深入理解StringBuilder的使用方法

    下面小編就為大家?guī)硪黄钊肜斫釹tringBuilder的使用方法。小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-05-05
  • C#游戲開發(fā)之實現(xiàn)華容道游戲

    C#游戲開發(fā)之實現(xiàn)華容道游戲

    這篇文章主要為大家詳細(xì)介紹了C#如何實現(xiàn)經(jīng)典華容道游戲,文中的示例代碼講解詳細(xì),對我們學(xué)習(xí)C#有一定的幫助,感興趣的小伙伴可以跟隨小編一起了解一下
    2023-01-01

最新評論