shader"xiaosen/last" // 「面板上的名字/shader名字」,第乙個名字可以用於分類,如不同平台,不同效果等的區分
//貼圖
_specular("specularcolor",color) = (1,1,1,1)
_gloss("gloss",range(10,200)) = 20 //範圍值
_alpha("alpha",range(0,1)) = 1
_normalmap("normalmap",2d) = "bump"{} //法線貼圖 不能使用顏色,bump使用模型自帶法線 切線空間 所有的計算空間要保持一致
_bumpscale("bumpscale",float) = 1//凹凸引數
} //tags//對所有pass塊都起作用 透明渲染佇列
//subshader至少有乙個
subshader//pass 內的只對內部起作用 1,定義光照模式
cull off//剔除, off:雙面渲染 back: 反面剔除 front :正面剔除 (如麵片)
zwrite off //深度寫模式 是否此物體的畫素深度會被記錄 預設記錄 off:不記錄 ,通常用於半透明物體
blend srcalpha oneminussrcalpha //alpha混合模式
fog//霧效
cgprogram //cg程式入口
//頂點函式 宣告乙個頂點函式#pragma固定格式
//頂點座標是基於模型的中心
//吧頂點座標從模型空間轉換到剪裁空間(遊戲環境到視野相機螢幕上)
#pragma vertex vert
//片元函式 返回模型對應的螢幕上的每乙個畫素的顏色值
#pragma fragment frag
#include "lighting.cginc" //引入unity自帶類庫 2,得到unity內建光照變數
//變數宣告 d名字要對應上方屬性變數名
// fixed4 _diffuse;
float _alpha;//透明度
fixed4 _color;
sampler2d _maintexture;
fixed4 _specular;
float4 _maintexture_st;//獲取屬性值 名字固定,前邊是紋理屬性名,後邊是固定,前兩個值代表tilling。後兩個代表offset
half _gloss;
sampler2d _normalmap;
float4 _normalmap_st;//
float _bumpscale;
//結構體,可作引數使用
struct a2v ;
struct v2f ;
//光照模型:是乙個公式 使用它來計算在某個點的光照效果
//標準光照模型 自發光 高光反射 漫反射 可以放到頂點函式也可以放到片元函式
//高光反射 = 直射光顏色*pow(max(cos夾角, 0), 高光引數) 夾角:反射光方向和視野方向的夾角 引數一般 >= 10, 值越大高光範圍也就越小
//頂點函式
v2f vert(a2v v)
//片元函式
//從法線貼圖裡面去的的法線方向是在切線空間下的,所以把所以與法線有關的計算放到切線空間內
fixed4 frag(v2f f) :sv_target
endcg //cg程式結束
} }fallback "vertexlit" //預備方案
}
這是乙個帶凹凸,自調色蘭伯特光照模型的shader,可以調節透明度等,記錄一下最近所學,不妨使用 SecureCRT指令碼(一)頂級物件之CRT
crt指令碼的實現需要使用crt定義好的各個物件的屬性和方法來實現,指令碼函式系列將逐一介紹crt指令碼中最常使用的物件,對這些物件以層級關係畫出,本篇首先介紹頂級物件。crt的屬性和方法。屬性是乙個靜態的物件,方法是具體執行的動作。屬性和方法底下還可以有子屬性和子方法,這個其實就和物件導向的程式設...
SecureCrt指令碼(一)頂級物件之Crt
crt自動化測試securecrt指令碼js指令碼 crt指令碼的實現需要使用crt定義好的各個物件的屬性和方法來實現,指令碼函式系列將逐一介紹crt指令碼中最常使用的物件,對這些物件以層級關係畫出,本篇首先介紹頂級物件。crt的屬性和方法。屬性是乙個靜態的物件,方法是具體執行的動作。屬性和方法底下...
網域名稱可以用多久 一頂假髮可以用多久?
這是很多人會問的問題。有些人覺得假髮應該像芭比娃娃那樣,可以用一輩子。如果用和芭比的材質一樣是用塑膠做的假髮,確實有機會用一輩子哦。畢竟塑膠的特性就是千年不壞 如果壞了應該也是底網壞了或零部件壞了,而不是頭髮壞了,但是我們都不想要塑膠發芽 看上去太假了 我們要的是看起來很自然 可以和自己頭髮一樣無縫...