summaryrefslogtreecommitdiffstatshomepage
path: root/bgfx
diff options
context:
space:
mode:
author cgwg <cgwg@users.noreply.github.com>2022-07-07 10:15:55 +0100
committer GitHub <noreply@github.com>2022-07-07 19:15:55 +1000
commit75466ad87d2af99d05b0c5b84e661523734d710b (patch)
tree0a11390cf8d214d52155666910e1910fb192bfac /bgfx
parentf3fb60fee6fb83c80e776fcfd1bd271dc83d126f (diff)
bgfx: crt-geom and crt-geom-deluxe improvements: (#8653)
* crt-geom-deluxe: Increased number of taps for halation and increased maximum width. * crt-geom*: Moved repeated crt-geom/crt-geom-deluxe functions into their own file. * crt-geom and crt-geom-deluxe: added support for sRGB output gamma ramp and made it the default.
Diffstat (limited to 'bgfx')
-rw-r--r--bgfx/chains/crt-geom-deluxe.json15
-rw-r--r--bgfx/chains/crt-geom.json13
-rw-r--r--bgfx/effects/crt-geom/crt-geom-deluxe.json1
-rw-r--r--bgfx/effects/crt-geom/crt-geom.json1
-rw-r--r--bgfx/shaders/essl/chains/crt-geom/fs_crt-geom-deluxe.binbin17749 -> 18114 bytes
-rw-r--r--bgfx/shaders/essl/chains/crt-geom/fs_crt-geom.binbin13852 -> 14279 bytes
-rw-r--r--bgfx/shaders/essl/chains/crt-geom/fs_gaussx.binbin2097 -> 3787 bytes
-rw-r--r--bgfx/shaders/essl/chains/crt-geom/fs_gaussy.binbin2097 -> 3787 bytes
-rw-r--r--bgfx/shaders/essl/chains/crt-geom/vs_gaussx.binbin704 -> 832 bytes
-rw-r--r--bgfx/shaders/essl/chains/crt-geom/vs_gaussy.binbin704 -> 832 bytes
-rw-r--r--bgfx/shaders/glsl/chains/crt-geom/fs_crt-geom-deluxe.binbin16997 -> 17343 bytes
-rw-r--r--bgfx/shaders/glsl/chains/crt-geom/fs_crt-geom.binbin13196 -> 13604 bytes
-rw-r--r--bgfx/shaders/glsl/chains/crt-geom/fs_gaussx.binbin2009 -> 3645 bytes
-rw-r--r--bgfx/shaders/glsl/chains/crt-geom/fs_gaussy.binbin2009 -> 3645 bytes
-rw-r--r--bgfx/shaders/glsl/chains/crt-geom/vs_gaussx.binbin644 -> 766 bytes
-rw-r--r--bgfx/shaders/glsl/chains/crt-geom/vs_gaussy.binbin644 -> 766 bytes
-rw-r--r--bgfx/shaders/metal/chains/crt-geom/fs_crt-geom-deluxe.binbin15163 -> 15960 bytes
-rw-r--r--bgfx/shaders/metal/chains/crt-geom/fs_crt-geom.binbin11796 -> 12535 bytes
-rw-r--r--bgfx/shaders/metal/chains/crt-geom/fs_gaussx.binbin2143 -> 3485 bytes
-rw-r--r--bgfx/shaders/metal/chains/crt-geom/fs_gaussy.binbin2143 -> 3485 bytes
-rw-r--r--bgfx/shaders/metal/chains/crt-geom/vs_gaussx.binbin1063 -> 1227 bytes
-rw-r--r--bgfx/shaders/metal/chains/crt-geom/vs_gaussy.binbin1063 -> 1227 bytes
-rw-r--r--bgfx/shaders/spirv/chains/crt-geom/fs_crt-geom-deluxe.binbin24150 -> 24660 bytes
-rw-r--r--bgfx/shaders/spirv/chains/crt-geom/fs_crt-geom.binbin18545 -> 19259 bytes
-rw-r--r--bgfx/shaders/spirv/chains/crt-geom/fs_gaussx.binbin4470 -> 7294 bytes
-rw-r--r--bgfx/shaders/spirv/chains/crt-geom/fs_gaussy.binbin4486 -> 7310 bytes
-rw-r--r--bgfx/shaders/spirv/chains/crt-geom/vs_gaussx.binbin1936 -> 2224 bytes
-rw-r--r--bgfx/shaders/spirv/chains/crt-geom/vs_gaussy.binbin1952 -> 2240 bytes
28 files changed, 27 insertions, 3 deletions
diff --git a/bgfx/chains/crt-geom-deluxe.json b/bgfx/chains/crt-geom-deluxe.json
index 5e20b5f8aa4..cea592b5d67 100644
--- a/bgfx/chains/crt-geom-deluxe.json
+++ b/bgfx/chains/crt-geom-deluxe.json
@@ -133,7 +133,7 @@
"name": "blurwidth",
"text": "Halation blur width",
"default": 2.0,
- "max" : 4.0,
+ "max" : 8.0,
"min" : 0.1,
"step" : 0.1,
"format": "%1.1f",
@@ -210,9 +210,19 @@
"step" : 0.05,
"format": "%1.2f",
"screen": "raster" },
+ { "type": "intenum",
+ "name": "monitorsRGB",
+ "text": "Gamma of output display",
+ "default": 1,
+ "max" : 1,
+ "min" : 0,
+ "step" : 1,
+ "format": "%s",
+ "strings": [ "custom", "sRGB" ],
+ "screen": "raster" },
{ "type": "float",
"name": "monitorgamma",
- "text": "Gamma of output display",
+ "text": " custom gamma",
"default": 2.2,
"max" : 4.0,
"min" : 0.7,
@@ -341,6 +351,7 @@
{ "uniform": "overscan", "slider": "overscan" },
{ "uniform": "aspect", "slider": "aspect" },
{ "uniform": "CRTgamma", "slider": "CRTgamma" },
+ { "uniform": "monitorsRGB", "slider": "monitorsRGB" },
{ "uniform": "monitorgamma","slider": "monitorgamma" },
{ "uniform": "aperture_strength","slider": "aperture_strength" },
{ "uniform": "aperture_brightboost","slider": "aperture_brightboost" },
diff --git a/bgfx/chains/crt-geom.json b/bgfx/chains/crt-geom.json
index f34d059800d..8e9c7af37ed 100644
--- a/bgfx/chains/crt-geom.json
+++ b/bgfx/chains/crt-geom.json
@@ -129,9 +129,19 @@
"step" : 0.05,
"format": "%1.2f",
"screen": "raster" },
+ { "type": "intenum",
+ "name": "monitorsRGB",
+ "text": "Gamma of output display",
+ "default": 1,
+ "max" : 1,
+ "min" : 0,
+ "step" : 1,
+ "format": "%s",
+ "strings": [ "custom", "sRGB" ],
+ "screen": "raster" },
{ "type": "float",
"name": "monitorgamma",
- "text": "Gamma of output display",
+ "text": " custom gamma",
"default": 2.2,
"max" : 4.0,
"min" : 0.7,
@@ -165,6 +175,7 @@
{ "uniform": "overscan", "slider": "overscan" },
{ "uniform": "aspect", "slider": "aspect" },
{ "uniform": "CRTgamma", "slider": "CRTgamma" },
+ { "uniform": "monitorsRGB", "slider": "monitorsRGB" },
{ "uniform": "monitorgamma","slider": "monitorgamma" },
{ "uniform": "aperture_strength", "slider": "aperture_strength" },
{ "uniform": "aperture_brightboost","slider": "aperture_brightboost" },
diff --git a/bgfx/effects/crt-geom/crt-geom-deluxe.json b/bgfx/effects/crt-geom/crt-geom-deluxe.json
index 500eab09542..08e4f2714c1 100644
--- a/bgfx/effects/crt-geom/crt-geom-deluxe.json
+++ b/bgfx/effects/crt-geom/crt-geom-deluxe.json
@@ -30,6 +30,7 @@
{ "name": "mipmap_texture", "type": "int", "values": [ 3 ] },
{ "name": "curvature", "type": "vec4", "values": [ 1.0, 0.0, 0.0, 0.0 ] },
{ "name": "CRTgamma", "type": "vec4", "values": [ 2.4, 0.0, 0.0, 0.0 ] },
+ { "name": "monitorsRGB", "type": "vec4", "values": [ 1.0, 0.0, 0.0, 0.0 ] },
{ "name": "monitorgamma", "type": "vec4", "values": [ 2.2, 0.0, 0.0, 0.0 ] },
{ "name": "overscan", "type": "vec4", "values": [ 1.0, 1.0, 0.0, 0.0 ] },
{ "name": "aspect", "type": "vec4", "values": [ 1.0, 0.75,0.0, 0.0 ] },
diff --git a/bgfx/effects/crt-geom/crt-geom.json b/bgfx/effects/crt-geom/crt-geom.json
index b742896485e..e51f071495e 100644
--- a/bgfx/effects/crt-geom/crt-geom.json
+++ b/bgfx/effects/crt-geom/crt-geom.json
@@ -28,6 +28,7 @@
{ "name": "mask_texture", "type": "int", "values": [ 1 ] },
{ "name": "curvature", "type": "vec4", "values": [ 1.0, 0.0, 0.0, 0.0 ] },
{ "name": "CRTgamma", "type": "vec4", "values": [ 2.4, 0.0, 0.0, 0.0 ] },
+ { "name": "monitorsRGB", "type": "vec4", "values": [ 1.0, 0.0, 0.0, 0.0 ] },
{ "name": "monitorgamma", "type": "vec4", "values": [ 2.2, 0.0, 0.0, 0.0 ] },
{ "name": "overscan", "type": "vec4", "values": [ 1.0, 1.0, 0.0, 0.0 ] },
{ "name": "aspect", "type": "vec4", "values": [ 1.0, 0.75,0.0, 0.0 ] },
diff --git a/bgfx/shaders/essl/chains/crt-geom/fs_crt-geom-deluxe.bin b/bgfx/shaders/essl/chains/crt-geom/fs_crt-geom-deluxe.bin
index dd169986c52..5c2140607f7 100644
--- a/bgfx/shaders/essl/chains/crt-geom/fs_crt-geom-deluxe.bin
+++ b/bgfx/shaders/essl/chains/crt-geom/fs_crt-geom-deluxe.bin
Binary files differ
diff --git a/bgfx/shaders/essl/chains/crt-geom/fs_crt-geom.bin b/bgfx/shaders/essl/chains/crt-geom/fs_crt-geom.bin
index bd3eae75d41..c7ff79043b5 100644
--- a/bgfx/shaders/essl/chains/crt-geom/fs_crt-geom.bin
+++ b/bgfx/shaders/essl/chains/crt-geom/fs_crt-geom.bin
Binary files differ
diff --git a/bgfx/shaders/essl/chains/crt-geom/fs_gaussx.bin b/bgfx/shaders/essl/chains/crt-geom/fs_gaussx.bin
index da68738b44b..d65593f24ce 100644
--- a/bgfx/shaders/essl/chains/crt-geom/fs_gaussx.bin
+++ b/bgfx/shaders/essl/chains/crt-geom/fs_gaussx.bin
Binary files differ
diff --git a/bgfx/shaders/essl/chains/crt-geom/fs_gaussy.bin b/bgfx/shaders/essl/chains/crt-geom/fs_gaussy.bin
index 5e5a57f68e3..e0ad4c1f8d1 100644
--- a/bgfx/shaders/essl/chains/crt-geom/fs_gaussy.bin
+++ b/bgfx/shaders/essl/chains/crt-geom/fs_gaussy.bin
Binary files differ
diff --git a/bgfx/shaders/essl/chains/crt-geom/vs_gaussx.bin b/bgfx/shaders/essl/chains/crt-geom/vs_gaussx.bin
index 7756f232313..8ea683c8084 100644
--- a/bgfx/shaders/essl/chains/crt-geom/vs_gaussx.bin
+++ b/bgfx/shaders/essl/chains/crt-geom/vs_gaussx.bin
Binary files differ
diff --git a/bgfx/shaders/essl/chains/crt-geom/vs_gaussy.bin b/bgfx/shaders/essl/chains/crt-geom/vs_gaussy.bin
index ee1fb41724f..09fcd8b2eee 100644
--- a/bgfx/shaders/essl/chains/crt-geom/vs_gaussy.bin
+++ b/bgfx/shaders/essl/chains/crt-geom/vs_gaussy.bin
Binary files differ
diff --git a/bgfx/shaders/glsl/chains/crt-geom/fs_crt-geom-deluxe.bin b/bgfx/shaders/glsl/chains/crt-geom/fs_crt-geom-deluxe.bin
index daf0b406f0c..4a8d4e1ec97 100644
--- a/bgfx/shaders/glsl/chains/crt-geom/fs_crt-geom-deluxe.bin
+++ b/bgfx/shaders/glsl/chains/crt-geom/fs_crt-geom-deluxe.bin
Binary files differ
diff --git a/bgfx/shaders/glsl/chains/crt-geom/fs_crt-geom.bin b/bgfx/shaders/glsl/chains/crt-geom/fs_crt-geom.bin
index 61e08b8409c..bee9e6fddd9 100644
--- a/bgfx/shaders/glsl/chains/crt-geom/fs_crt-geom.bin
+++ b/bgfx/shaders/glsl/chains/crt-geom/fs_crt-geom.bin
Binary files differ
diff --git a/bgfx/shaders/glsl/chains/crt-geom/fs_gaussx.bin b/bgfx/shaders/glsl/chains/crt-geom/fs_gaussx.bin
index 33857b53acb..360275169a1 100644
--- a/bgfx/shaders/glsl/chains/crt-geom/fs_gaussx.bin
+++ b/bgfx/shaders/glsl/chains/crt-geom/fs_gaussx.bin
Binary files differ
diff --git a/bgfx/shaders/glsl/chains/crt-geom/fs_gaussy.bin b/bgfx/shaders/glsl/chains/crt-geom/fs_gaussy.bin
index de57d5715c5..dc708579ed8 100644
--- a/bgfx/shaders/glsl/chains/crt-geom/fs_gaussy.bin
+++ b/bgfx/shaders/glsl/chains/crt-geom/fs_gaussy.bin
Binary files differ
diff --git a/bgfx/shaders/glsl/chains/crt-geom/vs_gaussx.bin b/bgfx/shaders/glsl/chains/crt-geom/vs_gaussx.bin
index 1f007194d4e..e8991da8526 100644
--- a/bgfx/shaders/glsl/chains/crt-geom/vs_gaussx.bin
+++ b/bgfx/shaders/glsl/chains/crt-geom/vs_gaussx.bin
Binary files differ
diff --git a/bgfx/shaders/glsl/chains/crt-geom/vs_gaussy.bin b/bgfx/shaders/glsl/chains/crt-geom/vs_gaussy.bin
index 2ee2901d407..0db77bad36f 100644
--- a/bgfx/shaders/glsl/chains/crt-geom/vs_gaussy.bin
+++ b/bgfx/shaders/glsl/chains/crt-geom/vs_gaussy.bin
Binary files differ
diff --git a/bgfx/shaders/metal/chains/crt-geom/fs_crt-geom-deluxe.bin b/bgfx/shaders/metal/chains/crt-geom/fs_crt-geom-deluxe.bin
index c4f056e4a1b..e6204e106a6 100644
--- a/bgfx/shaders/metal/chains/crt-geom/fs_crt-geom-deluxe.bin
+++ b/bgfx/shaders/metal/chains/crt-geom/fs_crt-geom-deluxe.bin
Binary files differ
diff --git a/bgfx/shaders/metal/chains/crt-geom/fs_crt-geom.bin b/bgfx/shaders/metal/chains/crt-geom/fs_crt-geom.bin
index a6484219902..e0f7de26e9c 100644
--- a/bgfx/shaders/metal/chains/crt-geom/fs_crt-geom.bin
+++ b/bgfx/shaders/metal/chains/crt-geom/fs_crt-geom.bin
Binary files differ
diff --git a/bgfx/shaders/metal/chains/crt-geom/fs_gaussx.bin b/bgfx/shaders/metal/chains/crt-geom/fs_gaussx.bin
index 43b4090f063..c911e1cf9fd 100644
--- a/bgfx/shaders/metal/chains/crt-geom/fs_gaussx.bin
+++ b/bgfx/shaders/metal/chains/crt-geom/fs_gaussx.bin
Binary files differ
diff --git a/bgfx/shaders/metal/chains/crt-geom/fs_gaussy.bin b/bgfx/shaders/metal/chains/crt-geom/fs_gaussy.bin
index 8e561ec35fe..7f62f62ded0 100644
--- a/bgfx/shaders/metal/chains/crt-geom/fs_gaussy.bin
+++ b/bgfx/shaders/metal/chains/crt-geom/fs_gaussy.bin
Binary files differ
diff --git a/bgfx/shaders/metal/chains/crt-geom/vs_gaussx.bin b/bgfx/shaders/metal/chains/crt-geom/vs_gaussx.bin
index 9cfe64d0167..64c78091750 100644
--- a/bgfx/shaders/metal/chains/crt-geom/vs_gaussx.bin
+++ b/bgfx/shaders/metal/chains/crt-geom/vs_gaussx.bin
Binary files differ
diff --git a/bgfx/shaders/metal/chains/crt-geom/vs_gaussy.bin b/bgfx/shaders/metal/chains/crt-geom/vs_gaussy.bin
index ab9fe45ef5c..67c78694efb 100644
--- a/bgfx/shaders/metal/chains/crt-geom/vs_gaussy.bin
+++ b/bgfx/shaders/metal/chains/crt-geom/vs_gaussy.bin
Binary files differ
diff --git a/bgfx/shaders/spirv/chains/crt-geom/fs_crt-geom-deluxe.bin b/bgfx/shaders/spirv/chains/crt-geom/fs_crt-geom-deluxe.bin
index 41a10e636ed..75dfa85cec7 100644
--- a/bgfx/shaders/spirv/chains/crt-geom/fs_crt-geom-deluxe.bin
+++ b/bgfx/shaders/spirv/chains/crt-geom/fs_crt-geom-deluxe.bin
Binary files differ
diff --git a/bgfx/shaders/spirv/chains/crt-geom/fs_crt-geom.bin b/bgfx/shaders/spirv/chains/crt-geom/fs_crt-geom.bin
index 1f3f3f6b4bc..14a47c07920 100644
--- a/bgfx/shaders/spirv/chains/crt-geom/fs_crt-geom.bin
+++ b/bgfx/shaders/spirv/chains/crt-geom/fs_crt-geom.bin
Binary files differ
diff --git a/bgfx/shaders/spirv/chains/crt-geom/fs_gaussx.bin b/bgfx/shaders/spirv/chains/crt-geom/fs_gaussx.bin
index 880f5bb1816..5e324863b83 100644
--- a/bgfx/shaders/spirv/chains/crt-geom/fs_gaussx.bin
+++ b/bgfx/shaders/spirv/chains/crt-geom/fs_gaussx.bin
Binary files differ
diff --git a/bgfx/shaders/spirv/chains/crt-geom/fs_gaussy.bin b/bgfx/shaders/spirv/chains/crt-geom/fs_gaussy.bin
index 0b1ed313eb2..632ca0c6283 100644
--- a/bgfx/shaders/spirv/chains/crt-geom/fs_gaussy.bin
+++ b/bgfx/shaders/spirv/chains/crt-geom/fs_gaussy.bin
Binary files differ
diff --git a/bgfx/shaders/spirv/chains/crt-geom/vs_gaussx.bin b/bgfx/shaders/spirv/chains/crt-geom/vs_gaussx.bin
index b1845cbc02c..83ede7de2a3 100644
--- a/bgfx/shaders/spirv/chains/crt-geom/vs_gaussx.bin
+++ b/bgfx/shaders/spirv/chains/crt-geom/vs_gaussx.bin
Binary files differ
diff --git a/bgfx/shaders/spirv/chains/crt-geom/vs_gaussy.bin b/bgfx/shaders/spirv/chains/crt-geom/vs_gaussy.bin
index 84f2b6454bd..74766849f04 100644
--- a/bgfx/shaders/spirv/chains/crt-geom/vs_gaussy.bin
+++ b/bgfx/shaders/spirv/chains/crt-geom/vs_gaussy.bin
Binary files differ