《Unity引擎中的Shader類和ShaderLab語言》

| 版本 | 作者 | 參與者 | 完成日期 | 備注 |
| YanlzVR_UnityShaderLab_V01_1.0 | 嚴立鉆 |
| 2020.10.09 |
|
|
|
|
|
|
|
##《Unity引擎中的Shader類和ShaderLab語言》發布說明:
++++“Unity引擎中的Shader類和ShaderLab語言”:是對“Unity”的基礎探索;【VR云游戲】:Unity+SteamVR+云技術+5G+AI:其中Unity主要開發語言就是C#,所以在進入Unity開發前先對C#進行一輪基礎夯實,熟悉C#之后,那就可以進行Unity開發了,最后結合SteamVR或VRTK等插件進行VR開發了;這里介紹的“Shader是指Unity中的ShaderLab語言”,一個被封裝了的宣告式著色器語言;
++++“Unity引擎中的Shader類和ShaderLab語言”:定位在一個科普類知識,“從入門到放棄”是一個系列,是最基礎的,也是最有參考價值的!
@@提示:有些博客可能只是開了頭,如果感興趣的同學,可以“點贊”或“評論區留言”,只要關注的同學多了,那就會繼續完善喲!(“++==”,表示沒有寫完的,如果關注度不高就不完善了;“++ok++”,表示此篇博客已經完成,是階段性完整的!)
$$$$博客溯源:

&&&&“從入門到放棄”系列:
++++【Unity從入門到放棄】:https://blog.csdn.net/VRunSoftYanlz/article/details/105776475
++++【C#從入門到放棄】:https://blog.csdn.net/VRunSoftYanlz/article/details/105757329
++++【Linux從入門到放棄】:https://blog.csdn.net/VRunSoftYanlz/article/details/104176967
++++【C++從入門到放棄】:https://blog.csdn.net/VRunSoftYanlz/article/details/103849127
++++【Python從入門到放棄】:https://blog.csdn.net/VRunSoftYanlz/article/details/101393069
++++【Qt從入門到放棄】:https://blog.csdn.net/VRunSoftYanlz/article/details/100904511
++++VR云游戲=Unity+SteamVR+云技術+5G+AI;(說明:AI人工智能不是我們的主要研究技術,只是了解一下,領略一下有風的感覺!但是,VR是我們的研究重點)
++++【Unity API】分類:https://blog.csdn.net/vrunsoftyanlz/category_7637520.html
++++【Unity開發基礎】分類:https://blog.csdn.net/vrunsoftyanlz/category_7309057.html
++++【Linux系統編程】分類:https://blog.csdn.net/vrunsoftyanlz/category_9694767.html
++++【C++C鑄就生存利器】分類:https://blog.csdn.net/vrunsoftyanlz/category_9325802.html
++++【人工智能AI2026】分類:https://blog.csdn.net/vrunsoftyanlz/category_9212024.html
++++【立鉆哥哥CSDN空間】:https://blog.csdn.net/VRunSoftYanlz/


##《Unity引擎中的Shader類和ShaderLab語言》目錄
#第一篇:Shader類篇
#第二篇:ShaderLab語言篇
#第三篇:ShaderLab應用篇
#第四篇:立鉆哥哥帶您ShaderLab的拓展
#第一篇:Shader類篇
#第一篇:Shader類篇 |
#第一篇:Shader類篇
++++立鉆哥哥:好久沒有對“Shader”相關進行探索了,今天就快速回顧一下并做相應的拓展;
++++【Shader編程】分類:https://blog.csdn.net/vrunsoftyanlz/category_7570174.html
++++【快速入門】:https://blog.csdn.net/VRunSoftYanlz/article/details/80372071
++++【基礎夯實】:https://blog.csdn.net/VRunSoftYanlz/article/details/80372628
++++以上是對“Shader和ShaderLab”探索的兩篇:“快速入門”和“基礎夯實”;

立鉆哥哥:Unity是一個入門快、提高難的游戲引擎,想要提升能力,至少需要越過3道坎:API+Shader+綜合能力;++1、API的積累:對API的合理利用不僅可以減輕自己的編碼負擔,而且往往可以提高程式的運行效率;這也是鉆哥開始“Unity API”獨立打造分類的初衷; ++2、Shader編程:想要做出一款精品游戲往往需要有高效的Shader的支持;Unity提供了一套改良的“Shader Lab”系統,優化了繁雜的“Open GL”編程; ++3、綜合能力(技術+業務+管理):一款產品的制作除了功能編程外,往往會涉及很多其他領域,例如產品架構、UI互動設計、模型制作等,作為主要的編程人員,對其他相關領域的了解程式往往會影響到產品制作直至最后的產品體驗; ++++立鉆哥哥一直在推動【VR云游戲=Unity+SteamVR+云技術+5G+AI】,這個只是一個引子,拋磚引玉讓大家對整個知識體系有一個明確的落地方向,寶寶們可以根據自己的興趣方向進行拓展:比如Unity這里是指一種“3D游戲引擎”,也可拓展至“UE4、Cocos2dx”等游戲引擎;SteamVR是一種跨硬體解決方案,也可拓展至“VRTK”等第三方插件;“云技術+5G”是一種跨平臺解決方案的核心技術,同樣可拓展至其他平臺解決方案;AI也是一種先進技術的舉例,也可以拓展至任何一種前沿技術; |
++++所以,我們在2020年又開始了一點點的探索,之后還會繼續!





#第二篇:ShaderLab語言篇
#第二篇:ShaderLab語言篇 |
#第二篇:ShaderLab語言篇
++++B2.1、Unity引擎中的Shader類
++++B2.2、Unity引擎中的ShaderLab
++++B2.3、立鉆哥哥對ShaderLab的拓展
++B2.1、Unity引擎中的Shader類
++B2.1、Unity引擎中的Shader類 |
++B2.1、Unity引擎中的Shader類
++++立鉆哥哥:Unity引擎中有一個Shader類,用于記錄宣告資訊,渲染管線根據宣告資訊進行渲染,寫一個ShaderLab的編譯器,用于讀取檔案并生成對應的Shader物件;
| struct Shader{ const HLSLFile* hlslFile; std::string name; std::vector<RootParameter> rootParameters; std::map<std::string, ShaderProperty> properties; std::vector<ShaderPass> passes; };
struct ShaderPass{ std::string vertexName; std::string fragmentName; size_t queue; RenderState renderState; std::map<std::string, std::string> tags; }; |
++B2.2、Unity引擎中的ShaderLab
++B2.2、Unity引擎中的ShaderLab |
++B2.2、Unity引擎中的ShaderLab
++++立鉆哥哥:ShaderLab是Unity的宣告式著色器語言,用于實作“資料驅動”渲染;
++++這里的“資料驅動”是指將multi-pass,pass內的tags,render state setup等資訊寫在ShaderLab中,渲染管線讀取這些資訊動態地執行渲染邏輯;
++++渲染管線(如URP,HDRP)決定了一個渲染能力,而ShaderLab則能以資料驅動的方式讓我們在渲染管線內自由發揮,而不再是將Shader的配置硬寫在引擎代碼中,提高靈活性;
++++ShaderLab本質就是在底層著色語言(主要是HLSL)的基礎上,提供各種的宣告資訊,這些資訊用于驅動渲染管線;
++++[HLSL]:Unity將HLSL代碼分布在各個pass內,并支持“#include”,因此整個Shader的功能可以由多檔案決定;
++++立鉆哥哥:可以通過以下鏈接了解學習“Shader和ShaderLab”的基礎知識;++【快速入門】:https://blog.csdn.net/VRunSoftYanlz/article/details/80372071++【基礎夯實】:https://blog.csdn.net/VRunSoftYanlz/article/details/80372628 |


#第三篇:ShaderLab應用篇
#第三篇:ShaderLab應用篇 |
#第三篇:ShaderLab應用篇
++++立鉆哥哥:可以在“Shader編程”分類中查閱更多Shader編程相關技術;
++++【Shader編程】分類:https://blog.csdn.net/vrunsoftyanlz/category_7570174.html






















@@提示:有些博客可能只是開了頭,如果感興趣的同學,可以“點贊”或“評論區留言”,只要關注的同學多了,那就會繼續完善喲!(“++==”,表示沒有寫完的,如果關注度不高就不完善了;“++ok++”,表示此篇博客已經完成,是階段性完整的!)

++++VR云游戲=Unity+SteamVR+云技術+5G+AI;(說明:AI人工智能不是我們的主要研究技術,只是了解一下,領略一下有風的感覺!但是,VR是我們的研究重點)
++++【Unity API】分類:https://blog.csdn.net/vrunsoftyanlz/category_7637520.html
++++【Unity開發基礎】分類:https://blog.csdn.net/vrunsoftyanlz/category_7309057.html
++++【Linux系統編程】分類:https://blog.csdn.net/vrunsoftyanlz/category_9694767.html
++++【C++C鑄就生存利器】分類:https://blog.csdn.net/vrunsoftyanlz/category_9325802.html
++++【人工智能AI2026】分類:https://blog.csdn.net/vrunsoftyanlz/category_9212024.html
++++【立鉆哥哥CSDN空間】:https://blog.csdn.net/VRunSoftYanlz/

【XR游戲開發QQ群:784477094】

++立鉆哥哥推薦的拓展學習鏈接(Link_Url):
| 立鉆哥哥推薦的拓展學習鏈接(Link_Url) |
++++立鉆哥哥Unity 學習空間: http://blog.csdn.net/VRunSoftYanlz/
++++虛擬現實VR資訊: https://blog.csdn.net/VRunSoftYanlz/article/details/89165846
++++HTC_VIVE開發基礎:https://blog.csdn.net/VRunSoftYanlz/article/details/81989970
++++Oculus雜談:https://blog.csdn.net/VRunSoftYanlz/article/details/82469850
++++Oculus安裝使用:https://blog.csdn.net/VRunSoftYanlz/article/details/82718982
++++Unity+SteamVR=>VR:https://blog.csdn.net/VRunSoftYanlz/article/details/88809370
++++Unity減少VR暈眩癥:https://blog.csdn.net/VRunSoftYanlz/article/details/89115518
++++SteamVR簡介:https://blog.csdn.net/VRunSoftYanlz/article/details/86484254
++++SteamVR腳本功能分析:https://blog.csdn.net/VRunSoftYanlz/article/details/86531480
++++SteamVR2.0開發指南:https://blog.csdn.net/VRunSoftYanlz/article/details/86618187
++++SteamVR2.2.0開發指南:https://blog.csdn.net/VRunSoftYanlz/article/details/88784527
++++SteamVR2.2.0快速入門:https://blog.csdn.net/VRunSoftYanlz/article/details/88833579
++++SteamVR2.2.0互動系統:https://blog.csdn.net/VRunSoftYanlz/article/details/89199778
++++SteamVR2.2.0傳送機制:https://blog.csdn.net/VRunSoftYanlz/article/details/89390866
++++SteamVR2.2.0教程(一):https://blog.csdn.net/VRunSoftYanlz/article/details/89324067
++++SteamVR2.2.0教程(二):https://blog.csdn.net/VRunSoftYanlz/article/details/89894097
++++SteamVR_Skeleton_Poser:https://blog.csdn.net/VRunSoftYanlz/article/details/89931725
++++SteamVR實戰之PMCore:https://blog.csdn.net/VRunSoftYanlz/article/details/89463658
++++SteamVR/Extras:https://blog.csdn.net/VRunSoftYanlz/article/details/86584108
++++SteamVR/Input:https://blog.csdn.net/VRunSoftYanlz/article/details/86601950
++++OpenXR簡介:https://blog.csdn.net/VRunSoftYanlz/article/details/85726365
++++VRTK雜談:https://blog.csdn.net/VRunSoftYanlz/article/details/82562993
++++VRTK快速入門(雜談):https://blog.csdn.net/VRunSoftYanlz/article/details/82955267
++++VRTK官方示例(目錄):https://blog.csdn.net/VRunSoftYanlz/article/details/82955410
++++VRTK代碼結構(目錄):https://blog.csdn.net/VRunSoftYanlz/article/details/82780085
++++VRTK(SceneResources):https://blog.csdn.net/VRunSoftYanlz/article/details/82795400
++++VRTK_ControllerEvents:https://blog.csdn.net/VRunSoftYanlz/article/details/83099512
++++VRTK_InteractTouch:https://blog.csdn.net/VRunSoftYanlz/article/details/83120220
++++虛擬現實行業應用:https://blog.csdn.net/VRunSoftYanlz/article/details/88360157
++++Steam平臺上的VR:https://blog.csdn.net/VRunSoftYanlz/article/details/88960085
++++Steam平臺熱銷VR:https://blog.csdn.net/VRunSoftYanlz/article/details/89007741
++++VR實驗:以太網幀的構成:https://blog.csdn.net/VRunSoftYanlz/article/details/82598140
++++實驗四:存盤器擴展實驗:https://blog.csdn.net/VRunSoftYanlz/article/details/87834434
++++FrameVR示例V0913:https://blog.csdn.net/VRunSoftYanlz/article/details/82808498
++++FrameVR示例V1003:https://blog.csdn.net/VRunSoftYanlz/article/details/83066516
++++SwitchMachineV1022:https://blog.csdn.net/VRunSoftYanlz/article/details/83280886
++++PlaySceneManagerV1022:https://blog.csdn.net/VRunSoftYanlz/article/details/83280886
++++Unity5.x用戶手冊:https://blog.csdn.net/VRunSoftYanlz/article/details/81712741
++++Unity面試題ABC:https://blog.csdn.net/vrunsoftyanlz/article/details/78630687
++++Unity面試題D:https://blog.csdn.net/VRunSoftYanlz/article/details/78630838
++++Unity面試題E:https://blog.csdn.net/vrunsoftyanlz/article/details/78630913
++++Unity面試題F:https://blog.csdn.net/VRunSoftYanlz/article/details/78630945
++++Cocos2dx面試題:https://blog.csdn.net/VRunSoftYanlz/article/details/78630967
++++禪道[zentao]:https://blog.csdn.net/VRunSoftYanlz/article/details/83964057
++++Lua快速入門篇(Xlua拓展):https://blog.csdn.net/VRunSoftYanlz/article/details/81173818
++++Lua快速入門篇(XLua教程):https://blog.csdn.net/VRunSoftYanlz/article/details/81141502
++++Lua快速入門篇(基礎概述):https://blog.csdn.net/VRunSoftYanlz/article/details/81041359
++++框架知識點:https://blog.csdn.net/VRunSoftYanlz/article/details/80862879
++++游戲框架(UI框架夯實篇):https://blog.csdn.net/vrunsoftyanlz/article/details/80781140
++++游戲框架(初探篇):https://blog.csdn.net/VRunSoftYanlz/article/details/80630325
++++.Net框架設計:https://blog.csdn.net/VRunSoftYanlz/article/details/87401225
++++從零開始學架構:https://blog.csdn.net/VRunSoftYanlz/article/details/88095895
++++設計模式簡單整理:https://blog.csdn.net/vrunsoftyanlz/article/details/79839641
++++專題:設計模式(精華篇):https://blog.csdn.net/VRunSoftYanlz/article/details/81322678
++++U3D小專案參考:https://blog.csdn.net/vrunsoftyanlz/article/details/80141811
++++Unity小游戲演算法分析:https://blog.csdn.net/VRunSoftYanlz/article/details/87908365
++++Unity案例(Vehicle):https://blog.csdn.net/VRunSoftYanlz/article/details/82355876
++++UML類圖:https://blog.csdn.net/vrunsoftyanlz/article/details/80289461
++++PowerDesigner簡介:https://blog.csdn.net/VRunSoftYanlz/article/details/86500084
++++Unity知識點0001:https://blog.csdn.net/vrunsoftyanlz/article/details/80302012
++++Unity知識點0008:https://blog.csdn.net/VRunSoftYanlz/article/details/81153606
++++U3D_Shader編程(第一篇:快速入門篇):https://blog.csdn.net/vrunsoftyanlz/article/details/80372071
++++U3D_Shader編程(第二篇:基礎夯實篇):https://blog.csdn.net/vrunsoftyanlz/article/details/80372628
++++Unity引擎基礎:https://blog.csdn.net/vrunsoftyanlz/article/details/78881685
++++Unity面向組件開發:https://blog.csdn.net/vrunsoftyanlz/article/details/78881752
++++Unity物理系統:https://blog.csdn.net/vrunsoftyanlz/article/details/78881879
++++Unity2D平臺開發:https://blog.csdn.net/vrunsoftyanlz/article/details/78882034
++++UGUI基礎:https://blog.csdn.net/vrunsoftyanlz/article/details/78884693
++++UGUI進階:https://blog.csdn.net/vrunsoftyanlz/article/details/78884882
++++UGUI綜合:https://blog.csdn.net/vrunsoftyanlz/article/details/78885013
++++Unity影片系統基礎:https://blog.csdn.net/vrunsoftyanlz/article/details/78886068
++++Unity影片系統進階:https://blog.csdn.net/vrunsoftyanlz/article/details/78886198
++++Navigation導航系統:https://blog.csdn.net/vrunsoftyanlz/article/details/78886281
++++Unity特效渲染:https://blog.csdn.net/vrunsoftyanlz/article/details/78886403
++++Unity資料存盤:https://blog.csdn.net/vrunsoftyanlz/article/details/79251273
++++Unity中Sqlite資料庫:https://blog.csdn.net/vrunsoftyanlz/article/details/79254162
++++WWW類和協程:https://blog.csdn.net/vrunsoftyanlz/article/details/79254559
++++Unity網路:https://blog.csdn.net/vrunsoftyanlz/article/details/79254902
++++Unity資源加密:https://blog.csdn.net/VRunSoftYanlz/article/details/87644514
++++PhotonServer簡介:https://blog.csdn.net/VRunSoftYanlz/article/details/86652770
++++撰寫Photon游戲服務器:https://blog.csdn.net/VRunSoftYanlz/article/details/86682935
++++C#事件:https://blog.csdn.net/vrunsoftyanlz/article/details/78631267
++++C#委托:https://blog.csdn.net/vrunsoftyanlz/article/details/78631183
++++C#集合:https://blog.csdn.net/vrunsoftyanlz/article/details/78631175
++++C#泛型:https://blog.csdn.net/vrunsoftyanlz/article/details/78631141
++++C#介面:https://blog.csdn.net/vrunsoftyanlz/article/details/78631122
++++C#靜態類:https://blog.csdn.net/vrunsoftyanlz/article/details/78630979
++++C#中System.String類:https://blog.csdn.net/vrunsoftyanlz/article/details/78630945
++++C#資料型別:https://blog.csdn.net/vrunsoftyanlz/article/details/78630913
++++Unity3D默認的快捷鍵:https://blog.csdn.net/vrunsoftyanlz/article/details/78630838
++++游戲相關縮寫:https://blog.csdn.net/vrunsoftyanlz/article/details/78630687
++++UnityAPI.Rigidbody剛體:https://blog.csdn.net/VRunSoftYanlz/article/details/81784053
++++UnityAPI.Material材質:https://blog.csdn.net/VRunSoftYanlz/article/details/81814303
++++UnityAPI.Android安卓:https://blog.csdn.net/VRunSoftYanlz/article/details/81843193
++++UnityAPI.AndroidJNI安卓JNI:https://blog.csdn.net/VRunSoftYanlz/article/details/81879345
++++UnityAPI.Transform變換:https://blog.csdn.net/VRunSoftYanlz/article/details/81916293
++++UnityAPI.WheelCollider輪碰撞器:https://blog.csdn.net/VRunSoftYanlz/article/details/82356217
++++UnityAPI.Resources資源:https://blog.csdn.net/VRunSoftYanlz/article/details/83155518
++++JSON資料結構:https://blog.csdn.net/VRunSoftYanlz/article/details/82026644
++++CocosStudio快速入門:https://blog.csdn.net/VRunSoftYanlz/article/details/82356839
++++Unity企業內訓(目錄):https://blog.csdn.net/VRunSoftYanlz/article/details/82634668
++++Unity企業內訓(第1講):https://blog.csdn.net/VRunSoftYanlz/article/details/82634733
++++Unity企業內訓(第2講):https://blog.csdn.net/VRunSoftYanlz/article/details/82861180
++++Unity企業內訓(第3講):https://blog.csdn.net/VRunSoftYanlz/article/details/82927699
++++Unity企業內訓(第4講):https://blog.csdn.net/VRunSoftYanlz/article/details/83479776
++++Unity企業內訓(第5講):https://blog.csdn.net/VRunSoftYanlz/article/details/83963811
++++Unity企業內訓(第6講):https://blog.csdn.net/VRunSoftYanlz/article/details/84207696
++++鉆哥帶您了解產品原型:https://blog.csdn.net/VRunSoftYanlz/article/details/87303828
++++插件<Obi Rope>:https://blog.csdn.net/VRunSoftYanlz/article/details/83963905
++++計算機組成原理(教材篇):https://blog.csdn.net/VRunSoftYanlz/article/details/82719129
++++5G接入:云計算和霧計算:https://blog.csdn.net/VRunSoftYanlz/article/details/88372718
++++云計算通俗講義:https://blog.csdn.net/VRunSoftYanlz/article/details/88652803
++++立鉆哥哥Unity 學習空間: http://blog.csdn.net/VRunSoftYanlz
--_--VRunSoft:lovezuanzuan--_--


--_--VRunSoft:lovezuanzuan--_--
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/167716.html
標籤:其他
