summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoryum <yum.food.vr@gmail.com>2023-01-26 14:15:45 -0800
committeryum <yum.food.vr@gmail.com>2023-01-26 14:15:45 -0800
commit30127aa8b3650fd1a5c91876860e057176f69a95 (patch)
tree7ff996bd9f0f87eb56a67ffeb41da7de16635d20
parentaa3e81f0688e870fca46c6908a5e5bf460702c9c (diff)
Fix PBR metallics
Metallics now reflect the map's cubemap. * Remove SpecularTint (did nothing) * Adjust mipBias to be sharper
-rw-r--r--Fonts/Bitmaps/font-0.png.meta2
-rw-r--r--Fonts/Bitmaps/font-1.png.meta2
-rw-r--r--Fonts/Bitmaps/font-2.png.meta2
-rw-r--r--Fonts/Bitmaps/font-3.png.meta2
-rw-r--r--Fonts/Bitmaps/font-4.png.meta2
-rw-r--r--Fonts/Bitmaps/font-5.png.meta2
-rw-r--r--Fonts/Bitmaps/font-6.png.meta2
-rw-r--r--Shaders/TaSTT_lighting_template.cginc14
-rw-r--r--Shaders/TaSTT_template.shader1
9 files changed, 18 insertions, 11 deletions
diff --git a/Fonts/Bitmaps/font-0.png.meta b/Fonts/Bitmaps/font-0.png.meta
index ccd4af5..c0e5ef9 100644
--- a/Fonts/Bitmaps/font-0.png.meta
+++ b/Fonts/Bitmaps/font-0.png.meta
@@ -33,7 +33,7 @@ TextureImporter:
serializedVersion: 2
filterMode: 1
aniso: 1
- mipBias: 1
+ mipBias: 0
wrapU: 0
wrapV: 0
wrapW: 0
diff --git a/Fonts/Bitmaps/font-1.png.meta b/Fonts/Bitmaps/font-1.png.meta
index 4eab3a4..feacf61 100644
--- a/Fonts/Bitmaps/font-1.png.meta
+++ b/Fonts/Bitmaps/font-1.png.meta
@@ -33,7 +33,7 @@ TextureImporter:
serializedVersion: 2
filterMode: 1
aniso: 1
- mipBias: 1
+ mipBias: 0
wrapU: 0
wrapV: 0
wrapW: 0
diff --git a/Fonts/Bitmaps/font-2.png.meta b/Fonts/Bitmaps/font-2.png.meta
index 5c6c1a2..dda53c9 100644
--- a/Fonts/Bitmaps/font-2.png.meta
+++ b/Fonts/Bitmaps/font-2.png.meta
@@ -33,7 +33,7 @@ TextureImporter:
serializedVersion: 2
filterMode: 1
aniso: 1
- mipBias: 1
+ mipBias: 0
wrapU: 0
wrapV: 0
wrapW: 0
diff --git a/Fonts/Bitmaps/font-3.png.meta b/Fonts/Bitmaps/font-3.png.meta
index 5328401..186b8d6 100644
--- a/Fonts/Bitmaps/font-3.png.meta
+++ b/Fonts/Bitmaps/font-3.png.meta
@@ -33,7 +33,7 @@ TextureImporter:
serializedVersion: 2
filterMode: 1
aniso: 1
- mipBias: 1
+ mipBias: 0
wrapU: 0
wrapV: 0
wrapW: 0
diff --git a/Fonts/Bitmaps/font-4.png.meta b/Fonts/Bitmaps/font-4.png.meta
index 54a3e23..e8727f5 100644
--- a/Fonts/Bitmaps/font-4.png.meta
+++ b/Fonts/Bitmaps/font-4.png.meta
@@ -33,7 +33,7 @@ TextureImporter:
serializedVersion: 2
filterMode: 1
aniso: 1
- mipBias: 1
+ mipBias: 0
wrapU: 0
wrapV: 0
wrapW: 0
diff --git a/Fonts/Bitmaps/font-5.png.meta b/Fonts/Bitmaps/font-5.png.meta
index 4125f52..48c55f6 100644
--- a/Fonts/Bitmaps/font-5.png.meta
+++ b/Fonts/Bitmaps/font-5.png.meta
@@ -33,7 +33,7 @@ TextureImporter:
serializedVersion: 2
filterMode: 1
aniso: 1
- mipBias: 1
+ mipBias: 0
wrapU: 0
wrapV: 0
wrapW: 0
diff --git a/Fonts/Bitmaps/font-6.png.meta b/Fonts/Bitmaps/font-6.png.meta
index af32846..2d2e7fd 100644
--- a/Fonts/Bitmaps/font-6.png.meta
+++ b/Fonts/Bitmaps/font-6.png.meta
@@ -33,7 +33,7 @@ TextureImporter:
serializedVersion: 2
filterMode: 1
aniso: 1
- mipBias: 1
+ mipBias: 0
wrapU: 0
wrapV: 0
wrapW: 0
diff --git a/Shaders/TaSTT_lighting_template.cginc b/Shaders/TaSTT_lighting_template.cginc
index 99cca58..e1798f9 100644
--- a/Shaders/TaSTT_lighting_template.cginc
+++ b/Shaders/TaSTT_lighting_template.cginc
@@ -48,7 +48,6 @@ float4 _Img_0xE000_0xE03F_TexelSize;
fixed4 Text_Color;
fixed4 Background_Color;
fixed4 Margin_Color;
-fixed4 Specular_Tint;
float Metallic;
float Smoothness;
@@ -368,7 +367,7 @@ UnityLight GetLight(v2f i)
return light;
}
-UnityIndirect GetIndirect(v2f i) {
+UnityIndirect GetIndirect(v2f i, float3 view_dir) {
UnityIndirect indirect;
indirect.diffuse = 0;
indirect.specular = 0;
@@ -379,6 +378,15 @@ UnityIndirect GetIndirect(v2f i) {
#if defined(FORWARD_BASE_PASS)
indirect.diffuse += max(0, ShadeSH9(float4(i.normal, 1)));
+ float3 reflect_dir = reflect(-view_dir, i.normal);
+ // There's a nonlinear relationship between mipmap level and roughness.
+ float roughness = 1 - Smoothness;
+ roughness *= 1.7 - .7 * roughness;
+ float3 env_sample = UNITY_SAMPLE_TEXCUBE_LOD(
+ unity_SpecCube0,
+ reflect_dir,
+ roughness * UNITY_SPECCUBE_LOD_STEPS);
+ indirect.specular = env_sample;
#endif
return indirect;
@@ -402,7 +410,7 @@ fixed4 light(v2f i, fixed4 unlit)
fixed3 pbr = UNITY_BRDF_PBS(albedo, specular_tint,
one_minus_reflectivity, Smoothness,
- i.normal, view_dir, GetLight(i), GetIndirect(i)).rgb;
+ i.normal, view_dir, GetLight(i), GetIndirect(i, view_dir)).rgb;
pbr = lerp(pbr.rgb, unlit.rgb, Emissive);
diff --git a/Shaders/TaSTT_template.shader b/Shaders/TaSTT_template.shader
index e6fd50e..bf9f53a 100644
--- a/Shaders/TaSTT_template.shader
+++ b/Shaders/TaSTT_template.shader
@@ -9,7 +9,6 @@
[Gamma] Metallic("Metallic", Range(0, 1)) = 0.5
Smoothness("Smoothness", Range(0, 1)) = 0.2
Emissive("Emissive", Range(0, 1)) = 0.1
- SpecularTint("Specular Tint", Color) = (1, 1, 1, 1)
[MaterialToggle] Render_Margin("Render margin", float) = 1
[MaterialToggle] Render_Visual_Indicator("Render visual speech indicator", float) = 1