[Unity 5.xShaders]Diffuse Shader--創(chuàng)建你的第一個(gè)shader


創(chuàng)建一個(gè)基本的 Standard Shader

關(guān)系圖.png

作為一個(gè)unity的開(kāi)發(fā)者码泞,大家都知道components功咒,所有的objects都包含了一系列的components郑叠。scripts決定了objects的邏輯,renderers決定了表現(xiàn)叶撒。而所有的renderers都包含幾個(gè)materials。每個(gè)material都包含一個(gè)獨(dú)立的shader。他們的關(guān)系如上圖蛆橡。


準(zhǔn)備階段

  1. 運(yùn)行untiy5并打開(kāi)一個(gè)新的工程
  2. Assets目錄下新建文件夾:Shaders
  3. Assets目錄下新建文件夾:Materials

如何實(shí)現(xiàn)

  1. 在Shaders文件夾下右鍵Create/Shader/Standard Surface Shader新建一個(gè)shader;
  2. 在Materials文件夾下右鍵Create/Material新建一個(gè)material掘譬;
  3. 把剛新建的shader和material重命名為StandardDiffuse泰演;
  4. 把新建的shader拖給新建的material;
  5. 在場(chǎng)景中新建一個(gè)Cube,把新建的material拖給Cube
  6. 可以添加一個(gè)Texture給material

具體效果

效果.png

解釋說(shuō)明

打開(kāi)的shader像這個(gè)樣子:

Shader "Custom/StandardDiffuse" {
    Properties {
        _Color ("Color", Color) = (1,1,1,1)
        _MainTex ("Albedo (RGB)", 2D) = "white" {}
        _Glossiness ("Smoothness", Range(0,1)) = 0.5
        _Metallic ("Metallic", Range(0,1)) = 0.0
    }
    SubShader {
        Tags { "RenderType"="Opaque" }
        LOD 200
        
        CGPROGRAM
        // Physically based Standard lighting model, and enable shadows on all light types
        #pragma surface surf Standard fullforwardshadows

        // Use shader model 3.0 target, to get nicer looking lighting
        #pragma target 3.0

        sampler2D _MainTex;

        struct Input {
            float2 uv_MainTex;
        };

        half _Glossiness;
        half _Metallic;
        fixed4 _Color;

        void surf (Input IN, inout SurfaceOutputStandard o) {
            // Albedo comes from a texture tinted by color
            fixed4 c = tex2D (_MainTex, IN.uv_MainTex) * _Color;
            o.Albedo = c.rgb;
            // Metallic and smoothness come from slider variables
            o.Metallic = _Metallic;
            o.Smoothness = _Glossiness;
            o.Alpha = c.a;
        }
        ENDCG
    }
    FallBack "Diffuse"
}

我們可以發(fā)現(xiàn)unity已經(jīng)幫我們寫(xiě)了很多內(nèi)容,初步需要知道:
1.第一行表明了這個(gè)shader在Unity中的路徑葱轩,它會(huì)出現(xiàn)在你選擇某個(gè)Material的shader時(shí)的下拉列表里弥激,并且可以隨時(shí)更改缘圈;
2.最后一行表明晶疼,當(dāng)這個(gè)shader在當(dāng)前環(huán)境中運(yùn)行失敗后嚼松,會(huì)默認(rèn)調(diào)用Unity自帶的Diffuse Shader;

這就是一個(gè)簡(jiǎn)單基于physically-based rendering的Surface Shaer袜炕,你會(huì)發(fā)現(xiàn)它和Unity4有很大的不同本谜。在引入physically-based shaders前,Unity4使用了更復(fù)雜的方法妇蛀。而Unity內(nèi)部使用Cg語(yǔ)言實(shí)現(xiàn)耕突,在Unity\Editor\Data\CGIncludes可以查看。

欲知后事如何评架,且聽(tīng)下回分解

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末眷茁,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子纵诞,更是在濱河造成了極大的恐慌上祈,老刑警劉巖,帶你破解...
    沈念sama閱讀 219,490評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異登刺,居然都是意外死亡籽腕,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,581評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門(mén)纸俭,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)皇耗,“玉大人,你說(shuō)我怎么就攤上這事揍很±陕ィ” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 165,830評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵窒悔,是天一觀的道長(zhǎng)呜袁。 經(jīng)常有香客問(wèn)我,道長(zhǎng)简珠,這世上最難降的妖魔是什么阶界? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,957評(píng)論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮聋庵,結(jié)果婚禮上膘融,老公的妹妹穿的比我還像新娘。我一直安慰自己珍策,他們只是感情好托启,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,974評(píng)論 6 393
  • 文/花漫 我一把揭開(kāi)白布宅倒。 她就那樣靜靜地躺著攘宙,像睡著了一般。 火紅的嫁衣襯著肌膚如雪拐迁。 梳的紋絲不亂的頭發(fā)上蹭劈,一...
    開(kāi)封第一講書(shū)人閱讀 51,754評(píng)論 1 307
  • 那天,我揣著相機(jī)與錄音线召,去河邊找鬼铺韧。 笑死,一個(gè)胖子當(dāng)著我的面吹牛缓淹,可吹牛的內(nèi)容都是我干的哈打。 我是一名探鬼主播,決...
    沈念sama閱讀 40,464評(píng)論 3 420
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼讯壶,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼料仗!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起伏蚊,我...
    開(kāi)封第一講書(shū)人閱讀 39,357評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤立轧,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體氛改,經(jīng)...
    沈念sama閱讀 45,847評(píng)論 1 317
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡帐萎,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,995評(píng)論 3 338
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了胜卤。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片疆导。...
    茶點(diǎn)故事閱讀 40,137評(píng)論 1 351
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖葛躏,靈堂內(nèi)的尸體忽然破棺而出是鬼,到底是詐尸還是另有隱情,我是刑警寧澤紫新,帶...
    沈念sama閱讀 35,819評(píng)論 5 346
  • 正文 年R本政府宣布均蜜,位于F島的核電站,受9級(jí)特大地震影響芒率,放射性物質(zhì)發(fā)生泄漏囤耳。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,482評(píng)論 3 331
  • 文/蒙蒙 一偶芍、第九天 我趴在偏房一處隱蔽的房頂上張望充择。 院中可真熱鬧,春花似錦匪蟀、人聲如沸椎麦。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 32,023評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)观挎。三九已至,卻和暖如春段化,著一層夾襖步出監(jiān)牢的瞬間嘁捷,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,149評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工显熏, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留雄嚣,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,409評(píng)論 3 373
  • 正文 我出身青樓喘蟆,卻偏偏與公主長(zhǎng)得像缓升,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子蕴轨,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,086評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容