5G BWP实战解析:从协议到代码,手把手教你理解带宽自适应(附38.300/38.331关键点)
2026/6/12 16:37:54
注意:因为是用模型的UV的X来判断裁剪的,因为需要模型将UV的X整个铺满
Shader "Unlit/001" { Properties { _MainTex ("Texture", 2D) = "white" {} _Scale("Scale",Range(0,1))=0.5 } SubShader { Tags { "RenderType"="Opaque" } LOD 100 Pass { CGPROGRAM #pragma vertex vert #pragma fragment frag // make fog work #pragma multi_compile_fog #include "UnityCG.cginc" //输入结构体 struct appdata { float4 vertex : POSITION; float2 uv : TEXCOORD0; }; //输出结构体 struct v2f { float2 uv : TEXCOORD0; UNITY_FOG_COORDS(1) float4 vertex : SV_POSITION; }; sampler2D _MainTex; float4 _MainTex_ST; float _Scale; 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 { //根据模型的UV.x来判断是否裁切 if(1-_Scale>i.uv.x){ discard; } fixed3 albeo=tex2D(_MainTex,i.uv).rgb; return fixed4(albeo,1); } ENDCG } } }