Added sdNgon node

This commit is contained in:
Rodz Labs 2021-09-29 20:46:37 +02:00
parent 05ffadc9b4
commit 9b0e4c8015
2 changed files with 117 additions and 0 deletions

View File

@ -0,0 +1,102 @@
{
"name": "sdngon",
"node_position": {
"x": 0,
"y": 0
},
"parameters": {
"cx": 0,
"cy": 0,
"n": 5,
"r": 0.4,
"rot": 0
},
"seed": 0,
"seed_locked": false,
"shader_model": {
"code": "",
"global": "float sdNgon(vec2 p, float r, float n) {\n\tfloat PI = 3.1415926535;\n\tp = circle_repeat_transform_2d(p, n);\n\tvec2 d = abs(p)-vec2(r*tan(3.14159265359/n), r);\n\treturn p.y < r ? p.y-r : length(max(d,vec2(0)))+min(max(d.x,d.y),0.0);\n}",
"includes": [
"sdrotate",
"sdcirclerepeat"
],
"inputs": [
],
"instance": "",
"longdesc": "An n-gon described as a signed distance function",
"name": "sdNgon",
"outputs": [
{
"longdesc": "The n-gon as a signed distance function",
"sdf2d": "sdNgon(sdf2d_rotate($uv-vec2($cx, $cy), $rot*0.01745329251-1.57079632679)-vec2(0.5), $r, $n)",
"shortdesc": "Output",
"type": "sdf2d"
}
],
"parameters": [
{
"control": "None",
"default": 3,
"label": "N",
"longdesc": "The number of sides of the n-gon",
"max": 12,
"min": 3,
"name": "n",
"shortdesc": "N",
"step": 1,
"type": "float"
},
{
"control": "Radius1.r",
"default": 0.5,
"label": "Radius",
"longdesc": "The radius of the n-gon",
"max": 1,
"min": 0,
"name": "r",
"shortdesc": "Radius",
"step": 0.01,
"type": "float"
},
{
"control": "Radius1.a",
"default": 0,
"label": "Rotation",
"longdesc": "The rotation of the n-gon",
"max": 180,
"min": -180,
"name": "rot",
"shortdesc": "Rotation",
"step": 0.01,
"type": "float"
},
{
"control": "P1.x",
"default": 0,
"label": "Center X",
"longdesc": "The position of the center on the X axis",
"max": 0.5,
"min": -0.5,
"name": "cx",
"shortdesc": "Center.x",
"step": 0.01,
"type": "float"
},
{
"control": "P1.y",
"default": 0,
"label": "Center Y",
"longdesc": "The position of the center on the Y axis",
"max": 0.5,
"min": -0.5,
"name": "cy",
"shortdesc": "Center.y",
"step": 0.01,
"type": "float"
}
],
"shortdesc": "sdNgon"
},
"type": "shader"
}

View File

@ -6136,6 +6136,21 @@
"seed_locked": false,
"tree_item": "Miscellaneous/Variations/TEX3D",
"type": "variations_tex3d"
},
{
"icon_data": "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",
"name": "sdngon_2",
"parameters": {
"cx": 0,
"cy": 0,
"n": 5,
"r": 0.4,
"rot": 0
},
"seed": 0,
"seed_locked": false,
"tree_item": "Simple/SDF/Shapes/sdNgon",
"type": "sdngon"
}
],
"name": "Base library"