UnityShader 根據鏡頭物件進行透明

2021-09-11 21:42:40 字數 998 閱讀 4474

前些時間接到乙個需求,要求攝像相機位置來判斷,當前是不是需要透明化,需要從半透到最後最後透明,在崩壞3的角色介面裡面有這樣的效果,當你鏡頭推進的時候, 頭髮可以又半透到透明狀態變化。

關鍵點在、在於用鏡頭位置與物體所在世界位置座標 做比較

shader "scene/alpha blend " 

_alphascale ("alpha scale", range(0, 1)) = 1

_cutoff ("alpha cutoff", range(0, 1)) = 0.5

}subshader //"rendertype"="transparentcutout"

//第乙個pass,關閉深度寫入,處理alphatest部分

pass

cull off

zwrite off

//ztest on

blend srcalpha oneminussrcalpha

cgprogram

#pragma multi_compile_fwdbase

#pragma vertex vert

#pragma fragment frag

#include "lighting.cginc"

#include "autolight.cginc"

fixed4 _color;

sampler2d _maintex;

float4 _maintex_st;

fixed _alphascale;

float _cutoff;

struct a2v ;

struct v2f ;

v2f vert(a2v v)

fixed4 frag(v2f i) : sv_target

endcg}}}

下面是當前效果

解讀百萬畫素鏡頭與高畫質鏡頭

正所謂 工欲善其事,必先利其器 沒有匹配的高畫質鏡頭,前端高畫質攝像機也不能發揮出應有的效果。當然,安防的高畫質監控需求不單對攝像機,也對專業鏡頭也提出了高畫質化的需求。百萬高畫質最大的優點就是畫素高,清晰度高。相比普通的監控鏡頭,高畫質鏡頭能做到真正的高畫質晰度,不僅白晝,即使在夜間 傍晚日落黃昏...

攝影光學與鏡頭pdf 特殊鏡頭

防抖鏡頭 我們都知道對於手持的拍攝者,鏡頭是否支援光學防抖是一件非常重要的事情,尤其是在暗光環境下拍攝,或者使用長焦鏡頭拍攝,一支支援光學防抖的鏡頭,可以很大程度的提高拍攝成功率,讓 更加清晰銳利。由此可見,對於日常拍攝而言,絕大多數情況下,使用防抖模式可以滿足日常的需求。當然,其實有許多數碼單鏡反...

lens flare 鏡頭光暈

最近的又乙個工作是給遊戲新增鏡頭光暈,google一下,gamedev上就有乙個很好的教程,最簡單的方法是 將太陽位置投影到螢幕空間,如果不在屏 幕內就不畫,否則從太陽位置向螢幕中心畫出一系列的光暈貼圖,混合方法還是src srcalpha,dest one。可完全當做2d進行繪製。我 使用irrl...