unityzgy/.svn/pristine/04/04c961d4b1c84e86380f63f91b647594cfe403cb.svn-base
ayuan9957 bf12e02276 feat: 多语言本地化系统 - 支持中/英/法/俄实时切换
- LocalizationManager: 新增翻译表(SetFormatted/SetDuration/LocalizeOperateMsg)
- LoginPanel: InputField placeholder本地化、字体颜色保持
- HistoryPanel: 用时数据本地化、placeholder本地化
- RecordDetailPanel: 操作详情消息本地化(LanguageChanged重建)
- AppraiseWindowBase: 评价等级本地化、操作消息重建
- EditorAppraiser: 所有评估消息改用InjectOperateMsgLocalized
- StudentOperateRecorder: 新增InjectOperateMsgLocalized方法
- LocalizationLanguageTestBar: 单例模式、ScreenSpaceOverlay筛选
- 字体切换时保留颜色和verticalOverflow
2026-07-16 10:05:59 +08:00

79 lines
1.3 KiB
Plaintext

Shader "Hidden/Dof/Bokeh34" {
Properties {
_MainTex ("Base (RGB)", 2D) = "white" {}
_Source ("Base (RGB)", 2D) = "black" {}
}
SubShader {
CGINCLUDE
#include "UnityCG.cginc"
sampler2D _MainTex;
sampler2D _Source;
uniform half4 _ArScale;
uniform half _Intensity;
uniform half4 _Source_TexelSize;
struct v2f {
half4 pos : SV_POSITION;
half2 uv2 : TEXCOORD0;
half4 source : TEXCOORD1;
};
#define COC bokeh.a
v2f vert (appdata_full v)
{
v2f o;
o.pos = v.vertex;
o.uv2.xy = v.texcoord.xy;// * 2.0; <- needed when using Triangles.js and not Quads.js
#if UNITY_UV_STARTS_AT_TOP
float4 bokeh = tex2Dlod (_Source, half4 (v.texcoord1.xy * half2(1,-1) + half2(0,1), 0, 0));
#else
float4 bokeh = tex2Dlod (_Source, half4 (v.texcoord1.xy, 0, 0));
#endif
o.source = bokeh;
o.pos.xy += (v.texcoord.xy * 2.0 - 1.0) * _ArScale.xy * COC;// + _ArScale.zw * coc;
o.source.rgb *= _Intensity;
return o;
}
half4 frag (v2f i) : SV_Target
{
half4 color = tex2D (_MainTex, i.uv2.xy);
color.rgb *= i.source.rgb;
color.a *= Luminance(i.source.rgb*0.25);
return color;
}
ENDCG
Pass {
Blend OneMinusDstColor One
ZTest Always Cull Off ZWrite Off
CGPROGRAM
#pragma target 3.0
#pragma vertex vert
#pragma fragment frag
ENDCG
}
}
Fallback off
}