From 7bf645f50067084ecdd7fbb287d1679b481c3f6d Mon Sep 17 00:00:00 2001 From: hecomi Date: Sun, 15 Mar 2020 23:58:44 +0900 Subject: [PATCH] add emissive and color scale. --- Assets/uDesktopDuplication/Shaders/uDD_Params.cginc | 7 +++++-- Assets/uDesktopDuplication/Shaders/uDD_Standard.shader | 6 +++--- Assets/uDesktopDuplication/Shaders/uDD_Unlit.shader | 7 ++----- .../uDesktopDuplication/Shaders/uDD_Unlit_BlackMask.shader | 6 ++---- .../Shaders/uDD_Unlit_Displacement.shader | 6 ++---- .../Shaders/uDD_Unlit_Transparent.shader | 7 ++----- 6 files changed, 16 insertions(+), 23 deletions(-) diff --git a/Assets/uDesktopDuplication/Shaders/uDD_Params.cginc b/Assets/uDesktopDuplication/Shaders/uDD_Params.cginc index c119195..f2ee461 100644 --- a/Assets/uDesktopDuplication/Shaders/uDD_Params.cginc +++ b/Assets/uDesktopDuplication/Shaders/uDD_Params.cginc @@ -2,8 +2,11 @@ #define UDD_PARAMS_CGINC sampler2D _MainTex; -fixed4 _Color; -sampler2D _CursorTex; +half4 _Color; +half _ColorScale; +half _Radius; +half _Width; +half _Thickness; half4 _CursorPositionScale; #define _CursorX _CursorPositionScale.x diff --git a/Assets/uDesktopDuplication/Shaders/uDD_Standard.shader b/Assets/uDesktopDuplication/Shaders/uDD_Standard.shader index e4ed1dd..54c9029 100644 --- a/Assets/uDesktopDuplication/Shaders/uDD_Standard.shader +++ b/Assets/uDesktopDuplication/Shaders/uDD_Standard.shader @@ -7,6 +7,7 @@ Properties _MainTex ("Albedo (RGB)", 2D) = "white" {} _Glossiness ("Smoothness", Range(0, 1)) = 0.5 _Metallic ("Metallic", Range(0, 1)) = 0.0 + _Emissive ("Emissive", Range(0, 10)) = 0.0 [KeywordEnum(Y, Z)] _Forward("Mesh Forward Direction", Int) = 0 [Toggle(BEND_ON)] _Bend("Use Bend", Int) = 0 [PowerSlider(10.0)] _Radius("Bend Radius", Range(1, 100)) = 30 @@ -38,9 +39,7 @@ SubShader half _Glossiness; half _Metallic; - half _Radius; - half _Width; - half _Thickness; + half _Emissive; void vert(inout appdata_full v) { @@ -55,6 +54,7 @@ SubShader o.Metallic = _Metallic; o.Smoothness = _Glossiness; o.Alpha = c.a; + o.Emission = c.rgb * _Emissive; } ENDCG diff --git a/Assets/uDesktopDuplication/Shaders/uDD_Unlit.shader b/Assets/uDesktopDuplication/Shaders/uDD_Unlit.shader index a73f2aa..ee76b1e 100644 --- a/Assets/uDesktopDuplication/Shaders/uDD_Unlit.shader +++ b/Assets/uDesktopDuplication/Shaders/uDD_Unlit.shader @@ -4,6 +4,7 @@ Properties { _Color ("Color", Color) = (1, 1, 1, 1) + _ColorScale ("ColorScale", Range(0.0, 10.0)) = 1.0 _MainTex ("Texture", 2D) = "white" {} [KeywordEnum(Y, Z)] _Forward("Mesh Forward Direction", Int) = 0 [Toggle(BEND_ON)] _Bend("Use Bend", Int) = 0 @@ -24,10 +25,6 @@ CGINCLUDE #include "./uDD_Common.cginc" -half _Radius; -half _Width; -half _Thickness; - v2f vert(appdata v) { v2f o; @@ -39,7 +36,7 @@ v2f vert(appdata v) fixed4 frag(v2f i) : SV_Target { - return uddGetScreenTexture(i.uv); + return uddGetScreenTexture(i.uv) * _Color * _ColorScale; } ENDCG diff --git a/Assets/uDesktopDuplication/Shaders/uDD_Unlit_BlackMask.shader b/Assets/uDesktopDuplication/Shaders/uDD_Unlit_BlackMask.shader index 5c24f84..dc64f02 100644 --- a/Assets/uDesktopDuplication/Shaders/uDD_Unlit_BlackMask.shader +++ b/Assets/uDesktopDuplication/Shaders/uDD_Unlit_BlackMask.shader @@ -4,6 +4,7 @@ Properties { _Color ("Color", Color) = (1, 1, 1, 1) + _ColorScale ("ColorScale", Range(0.0, 10.0)) = 1.0 _MainTex ("Texture", 2D) = "white" {} _Mask ("Mask", Range(0, 1)) = 0.1 [KeywordEnum(Y, Z)] _Forward("Mesh Forward Direction", Int) = 0 @@ -28,9 +29,6 @@ CGINCLUDE #include "./uDD_Common.cginc" fixed _Mask; -half _Radius; -half _Width; -half _Thickness; v2f vert(appdata v) { @@ -45,7 +43,7 @@ fixed4 frag(v2f i) : SV_Target { fixed4 tex = uddGetScreenTexture(i.uv); fixed alpha = pow((tex.r + tex.g + tex.b) / 3.0, _Mask); - return fixed4(tex.rgb * _Color.rgb, alpha * _Color.a); + return fixed4(tex.rgb * _Color.rgb * _ColorScale, alpha * _Color.a); } ENDCG diff --git a/Assets/uDesktopDuplication/Shaders/uDD_Unlit_Displacement.shader b/Assets/uDesktopDuplication/Shaders/uDD_Unlit_Displacement.shader index 44ab4f3..7039b88 100644 --- a/Assets/uDesktopDuplication/Shaders/uDD_Unlit_Displacement.shader +++ b/Assets/uDesktopDuplication/Shaders/uDD_Unlit_Displacement.shader @@ -4,6 +4,7 @@ Properties { _Color ("Color", Color) = (1, 1, 1, 1) + _ColorScale ("ColorScale", Range(0.0, 10.0)) = 1.0 _MainTex ("Texture", 2D) = "white" {} [KeywordEnum(Y, Z)] _Forward("Mesh Forward Direction", Int) = 0 [Toggle(BEND_ON)] _Bend("Use Bend", Int) = 0 @@ -30,9 +31,6 @@ CGINCLUDE #include "./uDD_Common.cginc" #include "Tessellation.cginc" -half _Radius; -half _Width; -half _Thickness; Texture2D _DispTex; SamplerState sampler_DispTex; half _DispFactor; @@ -150,7 +148,7 @@ DsOutput domain( fixed4 frag(DsOutput i) : SV_Target { - return uddGetScreenTexture(i.f2TexCoord); + return uddGetScreenTexture(i.f2TexCoord) * _Color * _ColorScale; } ENDCG diff --git a/Assets/uDesktopDuplication/Shaders/uDD_Unlit_Transparent.shader b/Assets/uDesktopDuplication/Shaders/uDD_Unlit_Transparent.shader index 18ab291..f9aa2d0 100644 --- a/Assets/uDesktopDuplication/Shaders/uDD_Unlit_Transparent.shader +++ b/Assets/uDesktopDuplication/Shaders/uDD_Unlit_Transparent.shader @@ -4,6 +4,7 @@ Properties { _Color ("Color", Color) = (1, 1, 1, 1) + _ColorScale ("ColorScale", Range(0.0, 10.0)) = 1.0 _MainTex ("Texture", 2D) = "white" {} [KeywordEnum(Y, Z)] _Forward("Mesh Forward Direction", Int) = 0 [Toggle(BEND_ON)] _Bend("Use Bend", Int) = 0 @@ -26,10 +27,6 @@ CGINCLUDE #include "./uDD_Common.cginc" -half _Radius; -half _Width; -half _Thickness; - v2f vert(appdata v) { v2f o; @@ -41,7 +38,7 @@ v2f vert(appdata v) fixed4 frag(v2f i) : SV_Target { - return fixed4(uddGetScreenTexture(i.uv).rgb, 1.0) * _Color; + return fixed4(uddGetScreenTexture(i.uv).rgb * _ColorScale, 1.0) * _Color; } ENDCG