// license:BSD-3-Clause
// copyright-holders:Ryan Holtz,ImJezze
//============================================================
//
//  post.json: Hum-bar, shadow-mask, and final
//  color convolution shader for CRT simulation.
//
//============================================================
{
	"blend": {
		"equation": "add",
		"srcColor": "srcalpha",
		"dstColor": "1-srcalpha",
		"srcAlpha": "srcalpha",
		"dstAlpha": "1-srcalpha"
	},
	"depth": {
		"function": "always"
	},
	"cull": { "mode": "none" },
	"write": {
		"rgb": true,
		"alpha": true
	},
	"vertex": "chains/hlsl/vs_post",
	"fragment": "chains/hlsl/fs_post",
	"uniforms": [
		{ "name": "s_tex",                    "type": "int",  "values": [ 0.0 ] },
		{ "name": "s_shadow",                 "type": "int",  "values": [ 1.0 ] },
		{ "name": "u_swap_xy",                "type": "vec4", "values": [   0.0,   0.0,   0.0,   0.0 ] },
		{ "name": "u_source_dims",            "type": "vec4", "values": [ 256.0, 256.0,   0.0,   0.0 ] },
		{ "name": "u_target_dims",            "type": "vec4", "values": [ 256.0, 256.0,   0.0,   0.0 ] },
		{ "name": "u_target_scale",           "type": "vec4", "values": [   1.0,   1.0,   0.0,   0.0 ] },
		{ "name": "u_humbar_hertz_rate",      "type": "vec4", "values": [   0.001, 0.0,   0.0,   0.0 ] },
		{ "name": "u_humbar_alpha",           "type": "vec4", "values": [   0.0,   0.0,   0.0,   0.0 ] },
		{ "name": "u_time",                   "type": "vec4", "values": [   0.0,   0.0,   0.0,   0.0 ] },
		{ "name": "u_screen_scale",           "type": "vec4", "values": [   1.0,   1.0,   0.0,   0.0 ] },
		{ "name": "u_screen_offset",          "type": "vec4", "values": [   0.0,   0.0,   0.0,   0.0 ] },
		{ "name": "u_shadow_tile_mode",       "type": "vec4", "values": [   0.0,   0.0,   0.0,   0.0 ] },
		{ "name": "u_shadow_alpha",           "type": "vec4", "values": [   0.0,   0.0,   0.0,   0.0 ] },
		{ "name": "u_shadow_count",           "type": "vec4", "values": [  12.0,  12.0,   0.0,   0.0 ] },
		{ "name": "u_shadow_uv",              "type": "vec4", "values": [   0.25,  0.25,  0.0,   0.0 ] },
		{ "name": "u_shadow_uv_offset",       "type": "vec4", "values": [   0.0,   0.0,   0.0,   0.0 ] },
		{ "name": "u_power",                  "type": "vec4", "values": [   1.0,   1.0,   1.0,   0.0 ] },
		{ "name": "u_floor",                  "type": "vec4", "values": [   0.0,   0.0,   0.0,   0.0 ] },
		{ "name": "u_chroma_mode",            "type": "vec4", "values": [   3.0,   0.0,   0.0,   0.0 ] },
		{ "name": "u_conversion_gain",        "type": "vec4", "values": [   0.299, 0.587, 0.114, 0.0 ] },
		{ "name": "u_inv_view_dims",          "type": "vec4", "values": [   1.0,   1.0,   0.0,   0.0 ] }
	]
}
