{
	"name": "sdannularshape",
	"node_position": {
		"x": 0,
		"y": 0
	},
	"parameters": {
		"r": 0.1,
		"ripples": 1
	},
	"seed_int": 0,
	"shader_model": {
		"code": "",
		"global": [
			"float sdRipples(float d, float w, int r) {",
			"\tfor (int i = 0; i < r; ++i) {",
			"\t\td = abs(d)-w;",
			"\t}",
			"\treturn d;",
			"}",
			""
		],
		"inputs": [
			{
				"default": "0.0",
				"label": "",
				"longdesc": "The input shape, defined as a signed distance function",
				"name": "in",
				"shortdesc": "Input",
				"type": "sdf2d"
			}
		],
		"instance": "",
		"longdesc": "Creates an annular shape from a shape described as a signed distance function",
		"name": "sdAnnularShape",
		"outputs": [
			{
				"longdesc": "The generated layered shape",
				"sdf2d": "sdRipples($in($uv), $r, int($ripples))",
				"shortdesc": "Output",
				"type": "sdf2d"
			}
		],
		"parameters": [
			{
				"control": "None",
				"default": 0,
				"label": "Width",
				"longdesc": "The width of each generated ripple",
				"max": 1,
				"min": 0,
				"name": "r",
				"shortdesc": "Width",
				"step": 0.01,
				"type": "float"
			},
			{
				"control": "None",
				"default": 1,
				"label": "Ripples",
				"longdesc": "The number of generated ripples",
				"max": 16,
				"min": 0,
				"name": "ripples",
				"shortdesc": "Ripples",
				"step": 1,
				"type": "float"
			}
		],
		"shortdesc": "sdAnnularShape"
	},
	"type": "shader"
}