欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

Shader面板上常用的內(nèi)置Enum有哪些

本篇文章給大家分享的是有關(guān)Shader面板上常用的內(nèi)置Enum有哪些,小編覺得挺實(shí)用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。

站在用戶的角度思考問題,與客戶深入溝通,找到婁底網(wǎng)站設(shè)計(jì)與婁底網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗(yàn),讓設(shè)計(jì)與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個(gè)性化、用戶體驗(yàn)好的作品,建站類型包括:成都網(wǎng)站制作、做網(wǎng)站、外貿(mào)營銷網(wǎng)站建設(shè)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、域名申請、雅安服務(wù)器托管、企業(yè)郵箱。業(yè)務(wù)覆蓋婁底地區(qū)。

今天打算把一個(gè)shader的ZTest屬性暴露在材質(zhì)面板上讓美術(shù)可以方便調(diào)節(jié),因?yàn)橐膊皇呛苤匾囊粋€(gè)shader就懶得專門寫一個(gè)UI了,按照ZTest關(guān)鍵字找半天沒找到,最后發(fā)現(xiàn)原來叫CompareFunction。

所以順便把shader里常用的一些都整理了一下,(另外發(fā)現(xiàn)現(xiàn)在也可以使用自定義的Enum了,印象中老版本的unity是不支持的,不知道是記錯(cuò)了還是unity后來支持了)

代碼如下

Shader "Mya/EnumTest"{    Properties    {        _MainTex ("Texture", 2D) = "white" {}                                                           [Header(Custom)]        [Enum(CustomEnum)]  _CustomEnum ("CustomEnum", Float) = 1.0
       [Header(Option)]        [Enum(UnityEngine.Rendering.BlendOp)]  _BlendOp  ("BlendOp", Float) = 1.0        [Enum(UnityEngine.Rendering.BlendMode)] _SrcBlend ("SrcBlend", Float) = 1.0        [Enum(UnityEngine.Rendering.BlendMode)] _DstBlend ("DstBlend", Float) = 0.0        [Enum(Off, 0, On, 1)]_ZWriteMode ("ZWriteMode", float) = 1        [Enum(UnityEngine.Rendering.CullMode)]_CullMode ("CullMode", float) = 2        [Enum(UnityEngine.Rendering.CompareFunction)]_ZTestMode ("ZTestMode", Float) = 2        [Enum(UnityEngine.Rendering.ColorWriteMask)]_ColorMask ("ColorMask", Float) = 2
       [Header(Stencil)]        [Enum(UnityEngine.Rendering.CompareFunction)]_StencilComp ("Stencil Comparison", Float) = 8        [IntRange]_StencilWriteMask ("Stencil Write Mask", Range(0,255)) = 255        [IntRange]_StencilReadMask ("Stencil Read Mask", Range(0,255)) = 255        [IntRange]_Stencil ("Stencil ID", Range(0,255)) = 0        [Enum(UnityEngine.Rendering.StencilOp)]_StencilPass ("Stencil Pass", Float) = 0        [Enum(UnityEngine.Rendering.StencilOp)]_StencilFail ("Stencil Fail", Float) = 0        [Enum(UnityEngine.Rendering.StencilOp)]_StencilZFail ("Stencil ZFail", Float) = 0
   }    SubShader    {        Tags { "RenderType"="Opaque" }        LOD 100
       Pass        {            BlendOp [_BlendOp]            Blend [_SrcBlend] [_DstBlend]            ZWrite [_ZWriteMode]            ZTest [_ZTestMode]            Cull [_CullMode]            ColorMask [_ColorMask]
           Stencil            {                Ref [_Stencil]                Comp [_StencilComp]                ReadMask [_StencilReadMask]                WriteMask [_StencilWriteMask]                Pass [_StencilPass]                Fail [_StencilFail]                ZFail [_StencilZFail]            }            CGPROGRAM            #pragma vertex vert            #pragma fragment frag            #include "UnityCG.cginc"
           struct appdata            {                float4 vertex : POSITION;                float2 uv : TEXCOORD0;            };
           struct v2f            {                float2 uv : TEXCOORD0;                float4 vertex : SV_POSITION;            };
           sampler2D _MainTex;            float4 _MainTex_ST;
           v2f vert (appdata v)            {                v2f o;                o.vertex = UnityObjectToClipPos(v.vertex);                o.uv = TRANSFORM_TEX(v.uv, _MainTex);                return o;            }
           fixed4 frag (v2f i) : SV_Target            {                // sample the texture                fixed4 col = tex2D(_MainTex, i.uv);                return col;            }            ENDCG        }    }}

自定義Enum的代碼

public enum CustomEnum{    Enum1 = 0,    Enum2 = 1,    Enum3 = 2}

效果如下

Shader面板上常用的內(nèi)置Enum有哪些

ZWriteMode是沒有內(nèi)置的,實(shí)際上也只有on和off兩個(gè)狀態(tài),所以用Toogle其實(shí)也可以,我這里是直接用[Enum(Off, 0, On, 1)]這樣的寫法聲明了個(gè)新的自定義Enum

[IntRange]我記得以前好像也是沒有的,這個(gè)可以繪制一個(gè)整形輸入的滑桿

想要知道unity還有哪些shader里可以用的Attributes可以看看MaterialPropertyDrawer.cs這個(gè)文件,或者繼承MaterialPropertyDrawer后自己寫一個(gè)。

以上就是Shader面板上常用的內(nèi)置Enum有哪些,小編相信有部分知識點(diǎn)可能是我們?nèi)粘9ぷ鲿姷交蛴玫降?。希望你能通過這篇文章學(xué)到更多知識。更多詳情敬請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。

名稱欄目:Shader面板上常用的內(nèi)置Enum有哪些
本文鏈接:http://aaarwkj.com/article20/peicco.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站營銷、App開發(fā)、營銷型網(wǎng)站建設(shè)、網(wǎng)站排名手機(jī)網(wǎng)站建設(shè)、標(biāo)簽優(yōu)化

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站建設(shè)網(wǎng)站維護(hù)公司
中文字幕日韩av综合在线| 亚洲视频在线的视频在| 亚洲综合色婷婷七月丁香| 久久精品人妻麻豆尤物| 日韩新片一区二区三区| 日韩欧美一区二区黄色| 一区二区三区一级黄色| 夫妻性生活短是什么原因| 人妻一区二区三区中文字幕| 亚洲精品成人在线国产| 日韩视频在线不卡观看| 午夜福利成人在线免费观看 | 国产成人亚洲精品另类动态| 国产传媒欧美日韩成人精品| 国产熟女一区二区精品视频| 亚洲日本久久久午夜精品| 黑丝美女国产精品久久久| 国产精品日韩欧美亚洲| 亚洲国产欧美日韩一区| 男女在线视频网站免费| 日韩夫妻性生活免费视频| 亚洲综合中文字幕日韩| 四虎免费在线高清观看| 亚洲综合成人av在线| 国产激情在线四五区观看| 国产精品久久久久久久av三级| 欧美日韩国产激情高清| 亚洲天堂av福利在线观看| 人妻中文字幕日韩av| 午夜在线免费观看小视频| 亚洲欧美一区二区国产| 日韩一二卡在线观看视频| 日韩一区二区免费看视频| 丝袜亚洲激情欧美日韩偷拍| 日本五十路亲子在线一区| 日本久久91跳蛋视频| 日韩欧美国产午夜精品| 日本一区二区三区电影播放| 日本不卡一区二区三区四| 午夜影院网站在线看黄| 亚洲国产免费一区二区|