{
	"name" : "defaultpipeline",
	// The buffers to allocate.
	"buffers" : [
        {
            "name" : "default",
			"depthbuffer" : true,
			"format" : "Rgba8",
			"filtering" : true
        },
		{
			"name" : "combo",
			"depthbuffer" : true,
			"format" : "Rgba8",
			"filtering" : true
		},
		{
			"name" : "colorbuffer",
			"depthbuffer" : false,
			"format" : "Rgba8",
			"filtering" : true
		}
	],

	"commands" : // Queue of commands to render.
	[
		{
			"name" : "colorpass",
			"type" : "renderpass",
			"source" :
			{
				"name" : "defaultcamera"
			},
			"target" : "default",
			"pre" :
			    ["clear", "depth",
			     "clear", "color",
				 "cleardepth" , 0,
                 "clearcolor", "0","0","0","0" ],
			"vertex" : "vertex",
			"fragment" : "fragment",
			"compareFunc" : "Greater",
			"filter" :
			[
				"cube"
			],
			"cull" : "neither"
		},
		{
			"name" : "reflectpass",
			"type" : "renderpass",
			"source" :
			{
				"name" : "defaultcamera"
			},
			"target" : "default",
			"vertex" : "vertex-reflect",
			"fragment" : "fragment-reflect",
			"compareFunc" : "Greater",
			"filter" :
			[
				"cube"
			],
			"cull" : "neither"
		},
		{ 
			"name" : "combopass",
			"type" : "renderpass",
			"source" :
			{
				"name" : "defaultcamera"
			},
			"target" : "combo",
			"vertex" : "vertex-water",
			"fragment" : "fragment-water",
			"filter" :
			[
				"post"
			],
			"cull" : "neither",
			"compareFunc" : "Always",

			"buffersources" :
			[ // buffer source, uniform to bind to
				["default", "colorTexture", "color"]
			]
		},
		{ 
			"name" : "hudpass",
			"type" : "renderpass",
			"source" :
			{
				"name" : "defaultcamera"
			},
			"pre" :
			    ["clear", "depth",
				 "cleardepth" , 0],
			"target" : "combo",
			"vertex" : "vertex-flip",
			"fragment" : "fragment",
			"compareFunc" : "Greater",
			"filter" :
			[
				"text"
			],
			"cull" : "neither"
		},
		{ 
			"name" : "pausePass",
			"type" : "renderpass",
			"source" :
			{
				"name" : "defaultcamera"
			},
			"target" : "combo",
			"vertex" : "vertex-flip",
			"fragment" : "fragment",
			"compareFunc" : "Greater",
			"pre" :
			    ["clear", "depth",
				 "cleardepth" , 0],
			"filter" :
			[
				 "pause"
			],
			"cull" : "neither"
		},
		{ 
			"name" : "menuPass",
			"type" : "renderpass",
			"source" :
			{
				"name" : "defaultcamera"
			},
			"target" : "combo",
			"vertex" : "vertex",
			"fragment" : "fragment",
			"compareFunc" : "Greater",
			"pre" :
			    ["clear", "depth",
				 "cleardepth" , 0],
			"filter" :
			[
				 "menu"
			],
			"cull" : "neither"
		},
		{ 
			"name" : "cutscenePass",
			"type" : "renderpass",
			"source" :
			{
				"name" : "defaultcamera"
			},
			"target" : "combo",
			"vertex" : "vertex",
			"fragment" : "fragment",
			"compareFunc" : "Greater",
			"filter" :
			[
				 "cutscene"
			],
			"cull" : "neither"
		},
		{
			"name" : "outpass",
			"type" : "renderpass",
			"source" :
			{
				"name" : "defaultcamera"
			},
			"target" : "colorbuffer",
			"vertex" : "vertex",
			"fragment" : "fragment",
			"pre" :
			    ["clear", "color",
				"clearcolor", "0","0","0","0" ],
			"filter" :
			[
				"post"
			],
			"cull" : "neither",
			"compareFunc" : "Always",

			"buffersources" :
			[ // buffer source, uniform to bind to
				["combo", "colorTexture", "color"]
			]

		}
	],

	"writeout" : "colorbuffer"
}