[ { "Author": "unknown", "OriginalCode": "float de( vec3 p0 ){\n vec4 p = vec4(p0, 1.);\n for(int i = 0; i < 8; i++){\n p.xyz = mod(p.xyz-1.,2.)-1.;\n p*=1.4/dot(p.xyz,p.xyz);\n }\n return (length(p.xz/p.w)*0.25);\n }", "ConvertedCode": "// author: unknown\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 1.4\n// B: 2.0\n// C: 0.25\n// Offset: N/A\n\n float4 p_iter = float4(p, 1.0);\n for(int i = 0; i < 8; i++){\n p_iter.xyz = fmod(p_iter.xyz-1.0,B)-1.0;\n p_iter=mul(p_iter, A/dot(p_iter.xyz,p_iter.xyz));\n }\n return (length(p_iter.xz/p_iter.w)*C);", "A": 1.4, "B": 2.0, "C": 0.25, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "unknown", "OriginalCode": "float de( vec3 p0 ){\n vec4 p = vec4(p0, 1.);\n for(int i = 0; i < 8; i++){\n p.xyz = mod(p.xyz-1., 2.)-1.;\n p*=(1.2/dot(p.xyz,p.xyz));\n }\n p/=p.w;\n return abs(p.x)*0.25;\n }", "ConvertedCode": "// author: unknown\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 1.2\n// B: 2.0\n// C: 0.25\n// Offset: N/A\n\n float4 p_iter = float4(p, 1.0);\n for(int i = 0; i < 8; i++){\n p_iter.xyz = fmod(p_iter.xyz-1.0, B)-1.0;\n p_iter=mul(p_iter, (A/dot(p_iter.xyz,p_iter.xyz)));\n }\n p_iter/=p_iter.w;\n return abs(p_iter.x)*C;", "A": 1.2, "B": 2.0, "C": 0.25, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "unknown", "OriginalCode": "float de( vec3 p0 ){\n vec4 p = vec4(p0, 1.);\n for(int i = 0; i < 8; i++){\n if(p.x > p.z)p.xz = p.zx;\n if(p.z > p.y)p.zy = p.yz;\n p = abs(p);\n p.xyz = mod(p.xyz-1., 2.)-1.;\n p*=1.23;\n }\n p/=p.w;\n return abs(p.y)*0.25;\n }", "ConvertedCode": "// author: unknown\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 1.23\n// B: 2.0\n// C: 0.25\n// Offset: N/A\n\n float4 p_iter = float4(p, 1.0);\n for(int i = 0; i < 8; i++){\n if(p_iter.x > p_iter.z)p_iter.xz = p_iter.zx;\n if(p_iter.z > p_iter.y)p_iter.zy = p_iter.yz;\n p_iter = abs(p_iter);\n p_iter.xyz = fmod(p_iter.xyz-1.0, B)-1.0;\n p_iter=mul(p_iter,A);\n }\n p_iter/=p_iter.w;\n return abs(p_iter.y)*C;", "A": 1.23, "B": 2.0, "C": 0.25, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "unknown", "OriginalCode": "float de( vec3 pos ) {\n #define SCALE 2.8\n #define MINRAD2 .25\n #define scale (vec4(SCALE, SCALE, SCALE, abs(SCALE)) / minRad2)\n float minRad2 = clamp(MINRAD2, 1.0e-9, 1.0);\n float absScalem1 = abs(SCALE - 1.0);\n float AbsScale = pow(abs(SCALE), float(1-10));\n vec4 p = vec4(pos,1);\n vec4 p0 = p;\n for (int i = 0; i < 9; i++)\n {\n p.xyz = clamp(p.xyz, -1.0, 1.0) * 2.0 - p.xyz;\n float r2 = dot(p.xyz, p.xyz);\n p *= clamp(max(minRad2/r2, minRad2), 0.0, 1.0);\n p = p*scale + p0;\n }\n return ((length(p.xyz) - absScalem1) / p.w - AbsScale);\n }", "ConvertedCode": "// author: unknown\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 2.8\n// B: 0.25\n// C: N/A\n// Offset: N/A\n\n float minRad2 = clamp(B, 1.0e-9, 1.0);\n float absScalem1 = abs(A - 1.0);\n float AbsScale = pow(abs(A), float(1-10));\n float4 p_iter = float4(p,1);\n float4 p0 = p_iter;\n for (int i = 0; i < 9; i++)\n {\n p_iter.xyz = clamp(p_iter.xyz, -1.0, 1.0) * 2.0 - p_iter.xyz;\n float r2 = dot(p_iter.xyz, p_iter.xyz);\n p_iter = mul(p_iter, clamp(max(minRad2/r2, minRad2), 0.0, 1.0));\n p_iter = p_iter*(float4(A, A, A, abs(A)) / minRad2) + p0;\n }\n return ((length(p_iter.xyz) - absScalem1) / p_iter.w - AbsScale);", "A": 2.8, "B": 0.25, "C": 0.0, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "unknown", "OriginalCode": "// highly varied domain - take a look around\n float de( vec3 p ){\n p = p.xzy;\n vec3 cSize = vec3(1., 1., 1.3);\n float scale = 1.;\n for( int i=0; i < 12; i++ ){\n p = 2.0*clamp(p, -cSize, cSize) - p;\n float r2 = dot(p,p);\n float k = max((2.)/(r2), .027);\n p *= k; scale *= k;\n }\n float l = length(p.xy);\n float rxy = l - 4.0;\n float n = l * p.z;\n rxy = max(rxy, -(n) / 4.);\n return (rxy) / abs(scale);\n }", "ConvertedCode": "// author: unknown\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 2.0\n// B: 0.027\n// C: 4.0\n// Offset: N/A\n\n float3 p_iter = p.xzy;\n float3 cSize = float3(1.0, 1.0, 1.3);\n float scale = 1.0;\n for( int i=0; i < 12; i++ ){\n p_iter = 2.0*clamp(p_iter, -cSize, cSize) - p_iter;\n float r2 = dot(p_iter,p_iter);\n float k = max((A)/(r2), B);\n p_iter = mul(p_iter, k); scale = mul(scale, k);\n }\n float l = length(p_iter.xy);\n float rxy = l - C;\n float n = l * p_iter.z;\n rxy = max(rxy, -(n) / 4.0);\n return (rxy) / abs(scale);", "A": 2.0, "B": 0.027, "C": 4.0, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "unknown", "OriginalCode": "// highly varied domain - take a look around\n float de( vec3 p ){\n p = p.xzy;\n vec3 cSize = vec3(1., 1., 1.3);\n float scale = 1.;\n for( int i=0; i < 12; i++ ){\n p = 2.0*clamp(p, -cSize, cSize) - p;\n float r2 = dot(p,p+sin(p.z*.3));\n float k = max((2.)/(r2), .027);\n p *= k; scale *= k;\n }\n float l = length(p.xy);\n float rxy = l - 4.0;\n float n = l * p.z;\n rxy = max(rxy, -(n) / 4.);\n return (rxy) / abs(scale);\n }", "ConvertedCode": "// author: unknown\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 0.3\n// B: 2.0\n// C: 0.027\n// Offset: N/A\n\n float3 p_iter = p.xzy;\n float3 cSize = float3(1.0, 1.0, 1.3);\n float scale = 1.0;\n for( int i=0; i < 12; i++ ){\n p_iter = 2.0*clamp(p_iter, -cSize, cSize) - p_iter;\n float r2 = dot(p_iter,p_iter+sin(p_iter.z*A));\n float k = max((B)/(r2), C);\n p_iter = mul(p_iter, k); scale = mul(scale, k);\n }\n float l = length(p_iter.xy);\n float rxy = l - 4.0;\n float n = l * p_iter.z;\n rxy = max(rxy, -(n) / 4.0);\n return (rxy) / abs(scale);", "A": 0.3, "B": 2.0, "C": 0.027, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "iq", "OriginalCode": "float de( vec3 p ){\n float scale = 1.0;\n float orb = 10000.0;\n for( int i=0; i<6; i++ ){\n p = -1.0 + 2.0*fract(0.5*p+0.5);\n p -= sign(p)*0.04; // trick\n float r2 = dot(p,p);\n float k = 0.95/r2;\n p *= k; scale *= k;\n orb = min( orb, r2);\n }\n\n float d1 = sqrt( min( min( dot(p.xy,p.xy),\n dot(p.yz,p.yz) ), dot(p.zx,p.zx) ) ) - 0.02;\n float d2 = abs(p.y);\n float dmi = d2;\n if( d1 < d2 ) dmi = d1;\n return 0.5*dmi/scale;\n }", "ConvertedCode": "// author: iq\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 0.04\n// B: 0.95\n// C: 0.02\n// Offset: N/A\n\n float scale = 1.0;\n float orb = 10000.0;\n float3 p_iter = p;\n for( int i=0; i<6; i++ ){\n p_iter = -1.0 + 2.0*frac(0.5*p_iter+0.5);\n p_iter -= sign(p_iter)*A; // trick\n float r2 = dot(p_iter,p_iter);\n float k = B/r2;\n p_iter = mul(p_iter, k); scale = mul(scale, k);\n orb = min( orb, r2);\n }\n\n float d1 = sqrt( min( min( dot(p_iter.xy,p_iter.xy),\n dot(p_iter.yz,p_iter.yz) ), dot(p_iter.zx,p_iter.zx) ) ) - C;\n float d2 = abs(p_iter.y);\n float dmi = d2;\n if( d1 < d2 ) dmi = d1;\n return 0.5*dmi/scale;", "A": 0.04, "B": 0.95, "C": 0.02, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "unknown", "OriginalCode": "// highly varied domain - take a look around\n float de( vec3 p ){\n vec3 CSize = vec3(1., 1.7, 1.);\n p = p.xzy;\n float scale = 1.1;\n for( int i=0; i < 8;i++ ){\n p = 2.0*clamp(p, -CSize, CSize) - p;\n float r2 = dot(p,p);\n float k = max((2.)/(r2), .5);\n p *= k; scale *= k;\n }\n float l = length(p.xy);\n float rxy = l - 1.0;\n float n = l * p.z;\n rxy = max(rxy, (n) / 8.);\n return (rxy) / abs(scale);\n }", "ConvertedCode": "// author: unknown\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 1.1\n// B: 2.0\n// C: 0.5\n// Offset: N/A\n\n float3 CSize = float3(1.0, 1.7, 1.0);\n float3 p_iter = p.xzy;\n float scale = A;\n for( int i=0; i < 8;i++ ){\n p_iter = 2.0*clamp(p_iter, -CSize, CSize) - p_iter;\n float r2 = dot(p_iter,p_iter);\n float k = max((B)/(r2), C);\n p_iter = mul(p_iter, k); scale = mul(scale, k);\n }\n float l = length(p_iter.xy);\n float rxy = l - 1.0;\n float n = l * p_iter.z;\n rxy = max(rxy, (n) / 8.0);\n return (rxy) / abs(scale);", "A": 1.1, "B": 2.0, "C": 0.5, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "unknown", "OriginalCode": "// highly varied domain - take a look around\n float de( vec3 p ){\n vec3 CSize = vec3(1., 1.7, 1.);\n p = p.xzy;\n float scale = 1.1;\n for( int i=0; i < 8;i++ ){\n p = 2.0*clamp(p, -CSize, CSize) - p;\n float r2 = dot(p,p+sin(p.z*.3));\n float k = max((2.)/(r2), .5);\n p *= k; scale *= k;\n }\n float l = length(p.xy);\n float rxy = l - 1.0;\n float n = l * p.z;\n rxy = max(rxy, (n) / 8.);\n return (rxy) / abs(scale);\n }", "ConvertedCode": "// author: unknown\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 0.3\n// B: 1.1\n// C: 2.0\n// Offset: N/A\n\n float3 CSize = float3(1.0, 1.7, 1.0);\n float3 p_iter = p.xzy;\n float scale = B;\n for( int i=0; i < 8;i++ ){\n p_iter = 2.0*clamp(p_iter, -CSize, CSize) - p_iter;\n float r2 = dot(p_iter,p_iter+sin(p_iter.z*A));\n float k = max((C)/(r2), 0.5);\n p_iter = mul(p_iter, k); scale = mul(scale, k);\n }\n float l = length(p_iter.xy);\n float rxy = l - 1.0;\n float n = l * p_iter.z;\n rxy = max(rxy, (n) / 8.0);\n return (rxy) / abs(scale);", "A": 0.3, "B": 1.1, "C": 2.0, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "unknown", "OriginalCode": "vec3 fold( vec3 p0 ){\n vec3 p = p0;\n if(length(p) > 1.2) return p;\n p = mod(p,2.)-1.;\n return p;\n }\n\n float de( vec3 p0 ){\n vec4 p = vec4(p0, 1.);\n for(int i = 0; i < 12; i++){\n if(p.x > p.z)p.xz = p.zx;\n if(p.z > p.y)p.zy = p.yz;\n p = abs(p);\n p.xyz = fold(p.xyz);\n p.xyz = mod(p.xyz-1., 2.)-1.;\n p*=(1.2/dot(p.xyz,p.xyz));\n }\n p/=p.w;\n return abs(p.x)*0.25;\n }", "ConvertedCode": "// author: unknown\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 1.2\n// B: 2.0\n// C: 0.25\n// Offset: N/A\n\n float4 p_iter = float4(p, 1.0);\n for(int i = 0; i < 12; i++){\n if(p_iter.x > p_iter.z)p_iter.xz = p_iter.zx;\n if(p_iter.z > p_iter.y)p_iter.zy = p_iter.yz;\n p_iter = abs(p_iter);\n // Inlined fold function\n {\n float3 p_fold = p_iter.xyz;\n if(length(p_fold) <= 1.2) {\n p_fold = fmod(p_fold,2.0)-1.0;\n }\n p_iter.xyz = p_fold;\n }\n p_iter.xyz = fmod(p_iter.xyz-1.0, B)-1.0;\n p_iter=mul(p_iter, (A/dot(p_iter.xyz,p_iter.xyz)));\n }\n p_iter/=p_iter.w;\n return abs(p_iter.x)*C;", "A": 1.2, "B": 2.0, "C": 0.25, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de( vec3 p ){\n p=abs(p)-1.2;\n if(p.x < p.z)p.xz=p.zx;\n if(p.y < p.z)p.yz=p.zy;\n if(p.x < p.y)p.xy=p.yx;\n float s=1.;\n for(int i=0;i<6;i++){\n p=abs(p);\n float r=2./clamp(dot(p,p),.1,1.);\n s*=r; p*=r; p-=vec3(.6,.6,3.5);\n }\n float a=1.5;\n p-=clamp(p,-a,a);\n return length(p)/s;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 1.5\n// B: 2.0\n// C: 1.2\n// Offset: (0.6,0.6,3.5)\n\n float3 p_iter = abs(p)-C;\n if(p_iter.x < p_iter.z)p_iter.xz=p_iter.zx;\n if(p_iter.y < p_iter.z)p_iter.yz=p_iter.zy;\n if(p_iter.x < p_iter.y)p_iter.xy=p_iter.yx;\n float s=1.0;\n for(int i=0;i<6;i++){\n p_iter=abs(p_iter);\n float r=B/clamp(dot(p_iter,p_iter),0.1,1.0);\n s=mul(s, r); p_iter=mul(p_iter, r); p_iter-=Offset;\n }\n float a=A;\n p_iter-=clamp(p_iter,-a,a);\n return length(p_iter)/s;", "A": 1.5, "B": 2.0, "C": 1.2, "OffsetX": 0.6, "OffsetY": 0.6, "OffsetZ": 3.5 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de( vec3 p ){\n // box fold\n p=abs(p)-15.;\n if(p.x < p.z)p.xz=p.zx;\n if(p.y < p.z)p.yz=p.zy;\n if(p.x < p.y)p.xy=p.yx;\n float s=2.;\n for (int i=0; i<8; i++){\n p=-sign(p)*(abs(abs(abs(p)-2.)-1.)-1.);\n float r=-1.55/max(.41,dot(p,p));\n s*=r; p*=r; p-=.5;\n }\n s=abs(s);\n return dot(p,normalize(vec3(1,2,3)))/s;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 15.0\n// B: 1.55\n// C: 0.41\n// Offset: N/A\n\n // box fold\n float3 p_iter = abs(p)-A;\n if(p_iter.x < p_iter.z)p_iter.xz=p_iter.zx;\n if(p_iter.y < p_iter.z)p_iter.yz=p_iter.zy;\n if(p_iter.x < p_iter.y)p_iter.xy=p_iter.yx;\n float s=2.0;\n for (int i=0; i<8; i++){\n p_iter=-sign(p_iter)*(abs(abs(abs(p_iter)-2.0)-1.0)-1.0);\n float r=-B/max(C,dot(p_iter,p_iter));\n s=mul(s, r); p_iter=mul(p_iter, r); p_iter-=0.5;\n }\n s=abs(s);\n return dot(p_iter,normalize(float3(1,2,3)))/s;", "A": 15.0, "B": 1.55, "C": 0.41, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "void sFold90( inout vec2 p ){\n vec2 v=normalize(vec2(1,-1));\n float g=dot(p,v);\n p-=(g-sqrt(g*g+1e-1))*v;\n }\n\n float de( vec3 p ){\n #define rot(a) mat2(cos(a),sin(a),-sin(a),cos(a))\n p=abs(p)-1.8;\n sFold90(p.zy);\n sFold90(p.xy);\n sFold90(p.zx);\n float s=2.;\n vec3 offset=p*.5;\n for(int i=0;i<8;i++){\n p=1.-abs(p-1.);\n float r=-1.3*max(1.5/dot(p,p),1.5);\n s*=r; p*=r; p+=offset;\n p.zx*=rot(-1.2);\n }\n s=abs(s); float a=8.5;\n p-=clamp(p,-a,a);\n return length(p)/s;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 1.8\n// B: 1.3\n// C: 1.5\n// Offset: N/A\n\n float3 p_iter =abs(p)-A;\n // Inlined sFold90\n {\n float2 temp_p = p_iter.zy;\n float2 v=normalize(float2(1,-1));\n float g=dot(temp_p,v);\n temp_p-=(g-sqrt(g*g+1e-1))*v;\n p_iter.zy = temp_p;\n }\n {\n float2 temp_p = p_iter.xy;\n float2 v=normalize(float2(1,-1));\n float g=dot(temp_p,v);\n temp_p-=(g-sqrt(g*g+1e-1))*v;\n p_iter.xy = temp_p;\n }\n {\n float2 temp_p = p_iter.zx;\n float2 v=normalize(float2(1,-1));\n float g=dot(temp_p,v);\n temp_p-=(g-sqrt(g*g+1e-1))*v;\n p_iter.zx = temp_p;\n }\n float s=2.0;\n float3 local_offset=p_iter*0.5;\n for(int i=0;i<8;i++){\n p_iter=1.0-abs(p_iter-1.0);\n float r=-B*max(C/dot(p_iter,p_iter),1.5);\n s=mul(s, r); p_iter=mul(p_iter, r); p_iter+=local_offset;\n p_iter.zx=mul(p_iter.zx, float2x2(cos(-1.2),sin(-1.2),-sin(-1.2),cos(-1.2)));\n }\n s=abs(s); float a=8.5;\n p_iter-=clamp(p_iter,-a,a);\n return length(p_iter)/s;", "A": 1.8, "B": 1.3, "C": 1.5, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float lpNorm( vec3 p, float n ){\n p = pow(abs(p), vec3(n));\n return pow(p.x+p.y+p.z, 1.0/n);\n }\n\n float de( vec3 p ){\n vec3 offset=p*.5;\n float s=2.;\n for (int i=0; i<5; i++){\n p=clamp(p,-1.,1.)*2.-p;\n float r=-10.*clamp(max(.3/pow(\n lpNorm(p,5.),2.),.3),.0,.6);\n s*=r; p*=r; p+=offset;\n }\n s=abs(s); float a=10.;\n p-=clamp(p,-a,a);\n return length(p)/s;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 2.0\n// B: 10.0\n// C: 0.3\n// Offset: N/A\n\n float3 local_offset=p*0.5;\n float s=A;\n float3 p_iter = p;\n for (int i=0; i<5; i++){\n p_iter=clamp(p_iter,-1.0,1.0)*2.0-p_iter;\n // Inlined lpNorm\n float lpNormVal;\n {\n float3 p_lp = pow(abs(p_iter), float3(5.0));\n lpNormVal = pow(p_lp.x+p_lp.y+p_lp.z, 1.0/5.0);\n }\n float r=-B*clamp(max(C/pow(\n lpNormVal,2.0),0.3),0.0,0.6);\n s=mul(s, r); p_iter=mul(p_iter, r); p_iter+=local_offset;\n }\n s=abs(s); float a=10.0;\n p_iter-=clamp(p_iter,-a,a);\n return length(p_iter)/s;", "A": 2.0, "B": 10.0, "C": 0.3, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "#define sabs1(p)sqrt((p)*(p)+1e-1)\n #define sabs2(p)sqrt((p)*(p)+1e-3)\n float de( vec3 p ){\n float s=2.; p=abs(p);\n for (int i=0; i<4; i++){\n p=1.-sabs2(p-1.);\n float r=-9.*clamp(max(.2/pow(min(min(sabs1(p.x),\n sabs1(p.y)),sabs1(p.z)),.5), .1), 0., .5);\n s*=r; p*=r; p+=1.;\n }\n s=abs(s); float a=2.;\n p-=clamp(p,-a,a);\n return length(p)/s-.01;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 2.0\n// B: 9.0\n// C: 0.2\n// Offset: N/A\n\n float s=A; float3 p_iter =abs(p);\n for (int i=0; i<4; i++){\n p_iter=1.0-(sqrt((p_iter-1.0)*(p_iter-1.0)+1e-3));\n float r=-B*clamp(max(C/pow(min(min(sqrt((p_iter.x)*(p_iter.x)+1e-1),\n sqrt((p_iter.y)*(p_iter.y)+1e-1)),sqrt((p_iter.z)*(p_iter.z)+1e-1)),0.5), 0.1), 0.0, 0.5);\n s=mul(s, r); p_iter=mul(p_iter, r); p_iter+=1.0;\n }\n s=abs(s); float a=2.0;\n p_iter-=clamp(p_iter,-a,a);\n return length(p_iter)/s-0.01;", "A": 2.0, "B": 9.0, "C": 0.2, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de( vec3 p ){\n float s=3.;\n for(int i = 0; i < 4; i++) {\n p=mod(p-1.,2.)-1.;\n float r=1.2/dot(p,p);\n p*=r; s*=r;\n }\n p = abs(p)-0.8;\n if (p.x < p.z) p.xz = p.zx;\n if (p.y < p.z) p.yz = p.zy;\n if (p.x < p.y) p.xy = p.yx;\n return length(cross(p,normalize(vec3(0,1,1))))/s-.001;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 3.0\n// B: 1.2\n// C: 0.8\n// Offset: N/A\n\n float s=A;\n float3 p_iter = p;\n for(int i = 0; i < 4; i++) {\n p_iter=fmod(p_iter-1.0,2.0)-1.0;\n float r=B/dot(p_iter,p_iter);\n p_iter=mul(p_iter, r); s=mul(s, r);\n }\n p_iter = abs(p_iter)-C;\n if (p_iter.x < p_iter.z) p_iter.xz = p_iter.zx;\n if (p_iter.y < p_iter.z) p_iter.yz = p_iter.zy;\n if (p_iter.x < p_iter.y) p_iter.xy = p_iter.yx;\n return length(cross(p_iter,normalize(float3(0,1,1))))/s-0.001;", "A": 3.0, "B": 1.2, "C": 0.8, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de( vec3 p ){\n float s=3.; p=abs(p);\n for (float i=0.; i<9.; i++){\n p-=clamp(p,-1.,1.)*2.;\n float r=6.62*clamp(.12/min(dot(p,p),1.),0.,1.);\n s*=r; p*=r; p+=1.5;\n }\n s=abs(s); float a=.8;\n p-=clamp(p,-a,a);\n return length(p)/s;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 3.0\n// B: 6.62\n// C: 0.12\n// Offset: N/A\n\n float s=A; float3 p_iter =abs(p);\n for (float i=0.0; i<9.0; i++){\n p_iter-=clamp(p_iter,-1.0,1.0)*2.0;\n float r=B*clamp(C/min(dot(p_iter,p_iter),1.0),0.0,1.0);\n s=mul(s, r); p_iter=mul(p_iter, r); p_iter+=1.5;\n }\n s=abs(s); float a=0.8;\n p_iter-=clamp(p_iter,-a,a);\n return length(p_iter)/s;", "A": 3.0, "B": 6.62, "C": 0.12, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de( vec3 p ){\n float s=12.; p=abs(p);\n vec3 offset=p*3.;\n for (float i=0.; i<5.; i++){\n p=1.-abs(p-1.);\n float r=-5.5*clamp(.3*max(2.5/dot(p,p),.8),0.,1.5);\n p*=r; p+=offset; s*=r;\n }\n s=abs(s); p=abs(p)-3.;\n if(p.x < p.z)p.xz=p.zx;\n if(p.y < p.z)p.yz=p.zy;\n if(p.x < p.y)p.xy=p.yx;\n float a=3.;\n p-=clamp(p,-a,a);\n return length(p.xz)/s;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 12.0\n// B: 5.5\n// C: 2.5\n// Offset: N/A\n\n float s=A; float3 p_iter =abs(p);\n float3 local_offset=p_iter*3.0;\n for (float i=0.0; i<5.0; i++){\n p_iter=1.0-abs(p_iter-1.0);\n float r=-B*clamp(0.3*max(C/dot(p_iter,p_iter),0.8),0.0,1.5);\n p_iter=mul(p_iter, r); p_iter+=local_offset; s=mul(s, r);\n }\n s=abs(s); p_iter=abs(p_iter)-3.0;\n if(p_iter.x < p_iter.z)p_iter.xz=p_iter.zx;\n if(p_iter.y < p_iter.z)p_iter.yz=p_iter.zy;\n if(p_iter.x < p_iter.y)p_iter.xy=p_iter.yx;\n float a=3.0;\n p_iter-=clamp(p_iter,-a,a);\n return length(p_iter.xz)/s;", "A": 12.0, "B": 5.5, "C": 2.5, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de( vec3 p ){\n #define rot(a) mat2(cos(a),sin(a),-sin(a),cos(a))\n p=abs(p)-3.;\n if(p.x < p.z)p.xz=p.zx;\n if(p.y < p.z)p.yz=p.zy;\n if(p.x < p.y)p.xy=p.yx;\n float s=3.;\n vec3 offset=p*1.2;\n for (float i=0.;i<8.;i++){\n p=1.-abs(p-1.);\n float r=-6.5*clamp(.41*max(1.1/dot(p,p),.8),.0,1.8);\n s*=r; p*=r; p+=offset;\n p.yz*=rot(-1.2);\n }\n s=abs(s);\n float a=20.;\n p-=clamp(p,-a,a);\n return length(p)/s;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 3.0\n// B: 3.0\n// C: 1.2\n// Offset: N/A\n\n float3 p_iter =abs(p)-A;\n if(p_iter.x < p_iter.z)p_iter.xz=p_iter.zx;\n if(p_iter.y < p_iter.z)p_iter.yz=p_iter.zy;\n if(p_iter.x < p_iter.y)p_iter.xy=p_iter.yx;\n float s=B;\n float3 local_offset=p_iter*C;\n for (float i=0.0;i<8.0;i++){\n p_iter=1.0-abs(p_iter-1.0);\n float r=-6.5*clamp(0.41*max(1.1/dot(p_iter,p_iter),0.8),0.0,1.8);\n s=mul(s, r); p_iter=mul(p_iter, r); p_iter+=local_offset;\n p_iter.yz=mul(p_iter.yz, float2x2(cos(-1.2),sin(-1.2),-sin(-1.2),cos(-1.2)));\n }\n s=abs(s);\n float a=20.0;\n p_iter-=clamp(p_iter,-a,a);\n return length(p_iter)/s;", "A": 3.0, "B": 3.0, "C": 1.2, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de( vec3 p ) {\n #define rot(a) mat2(cos(a),sin(a),-sin(a),cos(a))\n p=abs(p)-2.;\n if(p.x < p.z)p.xz=p.zx;\n if(p.y < p.z)p.yz=p.zy;\n if(p.x < p.y)p.xy=p.yx;\n float s=2.5;\n vec3 off=p*2.8;\n for (float i=0.;i<6.;i++) {\n p=-sign(p)*(abs(abs(abs(p)-2.)-1.)-1.);\n float r=-11.*clamp(.8*max(2.5/dot(p,p),.2),.3,.6);\n s*=r; p*=r; p+=off;\n p.yz*=rot(2.1);\n }\n s=abs(s);\n float a=30.;\n p-=clamp(p,-a,a);\n return length(p)/s;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 2.0\n// B: 2.5\n// C: 2.8\n// Offset: N/A\n\n float3 p_iter =abs(p)-A;\n if(p_iter.x < p_iter.z)p_iter.xz=p_iter.zx;\n if(p_iter.y < p_iter.z)p_iter.yz=p_iter.zy;\n if(p_iter.x < p_iter.y)p_iter.xy=p_iter.yx;\n float s=B;\n float3 off=p_iter*C;\n for (float i=0.0;i<6.0;i++) {\n p_iter=-sign(p_iter)*(abs(abs(abs(p_iter)-2.0)-1.0)-1.0);\n float r=-11.0*clamp(0.8*max(2.5/dot(p_iter,p_iter),0.2),0.3,0.6);\n s=mul(s, r); p_iter=mul(p_iter, r); p_iter+=off;\n p_iter.yz=mul(p_iter.yz, float2x2(cos(2.1),sin(2.1),-sin(2.1),cos(2.1)));\n }\n s=abs(s);\n float a=30.0;\n p_iter-=clamp(p_iter,-a,a);\n return length(p_iter)/s;", "A": 2.0, "B": 2.5, "C": 2.8, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de( vec3 p ){\n p=abs(p);\n float s=3.;\n vec3 offset = p*.5;\n for (float i=0.; i<5.; i++){\n p=1.-abs(p-1.);\n float r=-3.*clamp(.57*max(3./dot(p,p),.9),0.,1.);\n s*=r; p*=r; p+=offset;\n }\n s=abs(s);\n return length(cross(p,normalize(vec3(1))))/s-.008;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 3.0\n// B: 0.5\n// C: 3.0\n// Offset: N/A\n\n float3 p_iter=abs(p);\n float s=A;\n float3 local_offset = p_iter*B;\n for (float i=0.0; i<5.0; i++){\n p_iter=1.0-abs(p_iter-1.0);\n float r=-3.0*clamp(0.57*max(C/dot(p_iter,p_iter),0.9),0.0,1.0);\n s=mul(s, r); p_iter=mul(p_iter, r); p_iter+=local_offset;\n }\n s=abs(s);\n return length(cross(p_iter,normalize(float3(1))))/s-0.008;", "A": 3.0, "B": 0.5, "C": 3.0, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de( vec3 p ){\n p.xy=abs(p.xy)-2.;\n if(p.x < p.y)p.xy=p.yx;\n p.z=mod(p.z,4.)-2.;\n p.x-=3.2; p=abs(p);\n float s=2.;\n vec3 offset= p*1.5;\n for (float i=0.; i<5.; i++){\n p=1.-abs(p-1.);\n float r=-7.5*clamp(.38*max(1.2/dot(p,p),1.),0.,1.);\n s*=r; p*=r; p+=offset;\n }\n s=abs(s);\n float a=100.;\n p-=clamp(p,-a,a);\n return length(p)/s;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 2.0\n// B: 4.0\n// C: 3.2\n// Offset: N/A\n\n float3 p_iter = p;\n p_iter.xy=abs(p_iter.xy)-A;\n if(p_iter.x < p_iter.y)p_iter.xy=p_iter.yx;\n p_iter.z=fmod(p_iter.z,B)-2.0;\n p_iter.x-=C; p_iter=abs(p_iter);\n float s=2.0;\n float3 local_offset= p_iter*1.5;\n for (float i=0.0; i<5.0; i++){\n p_iter=1.0-abs(p_iter-1.0);\n float r=-7.5*clamp(0.38*max(1.2/dot(p_iter,p_iter),1.0),0.0,1.0);\n s=mul(s, r); p_iter=mul(p_iter, r); p_iter+=local_offset;\n }\n s=abs(s);\n float a=100.0;\n p_iter-=clamp(p_iter,-a,a);\n return length(p_iter)/s;", "A": 2.0, "B": 4.0, "C": 3.2, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de( vec3 p ){\n #define rot(a) mat2(cos(a),sin(a),-sin(a),cos(a))\n float s=1.;\n for(int i=0;i<3;i++){\n p=abs(p)-.3;\n if(p.x < p.y)p.xy=p.yx;\n if(p.x < p.z)p.xz=p.zx;\n if(p.y < p.z)p.yz=p.zy;\n p.xy=abs(p.xy)-.2;\n p.xy*=rot(.3);\n p.yz*=rot(.3);\n p*=2.; s*=2.;\n }\n p/=s;\n float h=.5;\n p.x-=clamp(p.x,-h,h);\n return length(vec2(length(p.xy)-.5,p.z))-.05;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 0.3\n// B: 0.2\n// C: 0.3\n// Offset: N/A\n\n float s=1.0;\n float3 p_iter = p;\n for(int i=0;i<3;i++){\n p_iter=abs(p_iter)-A;\n if(p_iter.x < p_iter.y)p_iter.xy=p_iter.yx;\n if(p_iter.x < p_iter.z)p_iter.xz=p_iter.zx;\n if(p_iter.y < p_iter.z)p_iter.yz=p_iter.zy;\n p_iter.xy=abs(p_iter.xy)-B;\n p_iter.xy=mul(p_iter.xy, float2x2(cos(0.3),sin(0.3),-sin(0.3),cos(0.3)));\n p_iter.yz=mul(p_iter.yz, float2x2(cos(C),sin(C),-sin(C),cos(C)));\n p_iter=mul(p_iter, 2.0); s=mul(s, 2.0);\n }\n p_iter/=s;\n float h=0.5;\n p_iter.x-=clamp(p_iter.x,-h,h);\n return length(float2(length(p_iter.xy)-0.5,p_iter.z))-0.05;", "A": 0.3, "B": 0.2, "C": 0.3, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de( vec3 p ){\n float s=1.;\n for(int i=0;i<3;i++){\n p=abs(p)-.3;\n if(p.x < p.y)p.xy=p.yx;\n if(p.x < p.z)p.xz=p.zx;\n if(p.y < p.z)p.yz=p.zy;\n p.xy-=.2; p*=2.; s*=2.;\n }\n p/=s;\n float h=.5;\n p.x-=clamp(p.x,-h,h);\n return length(vec2(length(p.xy)-.5,p.z))-.05;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 0.3\n// B: 0.2\n// C: 0.5\n// Offset: N/A\n\n float s=1.0;\n float3 p_iter = p;\n for(int i=0;i<3;i++){\n p_iter=abs(p_iter)-A;\n if(p_iter.x < p_iter.y)p_iter.xy=p_iter.yx;\n if(p_iter.x < p_iter.z)p_iter.xz=p_iter.zx;\n if(p_iter.y < p_iter.z)p_iter.yz=p_iter.zy;\n p_iter.xy-=B; p_iter=mul(p_iter, 2.0); s=mul(s, 2.0);\n }\n p_iter/=s;\n float h=C;\n p_iter.x-=clamp(p_iter.x,-h,h);\n return length(float2(length(p_iter.xy)-0.5,p_iter.z))-0.05;", "A": 0.3, "B": 0.2, "C": 0.5, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de( vec3 p ){\n #define rot(a) mat2(cos(a),sin(a),-sin(a),cos(a))\n for(int i=0;i<3;i++){\n p=abs(p)-.3;\n if(p.x < p.y)p.xy=p.yx;\n if(p.x < p.z)p.xz=p.zx;\n if(p.y < p.z)p.yz=p.zy;\n p.xy-=.2; p.xy*=rot(.5); p.yz*=rot(.5);\n }\n float h=.5;\n p.x-=clamp(p.x,-h,h);\n return length(vec2(length(p.xy)-.5,p.z))-.05;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 0.3\n// B: 0.2\n// C: 0.5\n// Offset: N/A\n\n float3 p_iter = p;\n for(int i=0;i<3;i++){\n p_iter=abs(p_iter)-A;\n if(p_iter.x < p_iter.y)p_iter.xy=p_iter.yx;\n if(p_iter.x < p_iter.z)p_iter.xz=p_iter.zx;\n if(p_iter.y < p_iter.z)p_iter.yz=p_iter.zy;\n p_iter.xy-=B; p_iter.xy=mul(p_iter.xy, float2x2(cos(0.5),sin(0.5),-sin(0.5),cos(0.5))); p_iter.yz=mul(p_iter.yz, float2x2(cos(0.5),sin(0.5),-sin(0.5),cos(0.5)));\n }\n float h=C;\n p_iter.x-=clamp(p_iter.x,-h,h);\n return length(float2(length(p_iter.xy)-0.5,p_iter.z))-0.05;", "A": 0.3, "B": 0.2, "C": 0.5, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "#define TAUg atan(1.)*8.\n vec2 pmodg(vec2 p, float n){\n float a=mod(atan(p.y, p.x),TAUg/n)-.5 *TAUg/n;\n return length(p)*vec2(sin(a),cos(a));\n }\n\n float de( vec3 p ){\n for(int i=0;i<4;i++){\n p.xy = pmodg(p.xy,10.); p.y-=2.;\n p.yz = pmodg(p.yz, 12.); p.z-=10.;\n }\n return dot(abs(p),normalize(vec3(13,1,7)))-.7;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 2.0\n// B: 10.0\n// C: 0.7\n// Offset: N/A\n\n float3 p_iter = p;\n for(int i=0;i<4;i++){\n // Inlined pmodg\n {\n float2 temp_p = p_iter.xy;\n float TAUg = atan(1.0)*8.0;\n float a = fmod(atan2(temp_p.y, temp_p.x),TAUg/10.0)-0.5 *TAUg/10.0;\n p_iter.xy = length(temp_p)*float2(sin(a),cos(a));\n }\n p_iter.y-=A;\n {\n float2 temp_p = p_iter.yz;\n float TAUg = atan(1.0)*8.0;\n float a = fmod(atan2(temp_p.y, temp_p.x),TAUg/12.0)-0.5 *TAUg/12.0;\n p_iter.yz = length(temp_p)*float2(sin(a),cos(a));\n }\n p_iter.z-=B;\n }\n return dot(abs(p_iter),normalize(float3(13,1,7)))-C;", "A": 2.0, "B": 10.0, "C": 0.7, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de( vec3 p ){\n p.x-=4.;\n p=mod(p,8.)-4.;\n for(int j=0;j<3;j++){\n p.xy=abs(p.xy)-.3;\n p.yz=abs(p.yz)+.7,\n p.xz=abs(p.xz)-.2;\n }\n return length(cross(p,vec3(.5)))-.1;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 4.0\n// B: 8.0\n// C: 4.0\n// Offset: N/A\n\n float3 p_iter = p;\n p_iter.x-=A;\n p_iter=fmod(p_iter,B)-C;\n for(int j=0;j<3;j++){\n p_iter.xy=abs(p_iter.xy)-0.3;\n p_iter.yz=abs(p_iter.yz)+0.7,\n p_iter.xz=abs(p_iter.xz)-0.2;\n }\n return length(cross(p_iter,float3(0.5)))-0.1;", "A": 4.0, "B": 8.0, "C": 4.0, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "vec3 fold(vec3 p0){\n vec3 p = p0;\n if(length(p) > 2.)return p;\n p = mod(p,2.)-1.;\n return p;\n }\n\n float de( vec3 p0 ){\n vec4 p = vec4(p0, 1.);\n escape = 0.;\n if(p.x > p.z)p.xz = p.zx;\n if(p.z > p.y)p.zy = p.yz;\n if(p.y > p.x)p.yx = p.xy;\n p = abs(p);\n for(int i = 0; i < 8; i++){\n p.xyz = fold(p.xyz);\n p.xyz = fract(p.xyz*0.5 - 1.)*2.-1.0;\n p*=(1.1/clamp(dot(p.xyz,p.xyz),-0.1,1.));\n }\n p/=p.w;\n return abs(p.x)*0.25;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 1.1\n// B: 0.1\n// C: 0.25\n// Offset: N/A\n\n float4 p_iter = float4(p, 1.0);\n //escape = 0.0;\n if(p_iter.x > p_iter.z)p_iter.xz = p_iter.zx;\n if(p_iter.z > p_iter.y)p_iter.zy = p_iter.yz;\n if(p_iter.y > p_iter.x)p_iter.yx = p_iter.xy;\n p_iter = abs(p_iter);\n for(int i = 0; i < 8; i++){\n // Inlined fold function\n {\n float3 p_fold = p_iter.xyz;\n if(length(p_fold) <= 2.0) {\n p_fold = fmod(p_fold,2.0)-1.0;\n }\n p_iter.xyz = p_fold;\n }\n p_iter.xyz = frac(p_iter.xyz*0.5 - 1.0)*2.0-1.0;\n p_iter=mul(p_iter, (A/clamp(dot(p_iter.xyz,p_iter.xyz),-B,1.0)));\n }\n p_iter/=p_iter.w;\n return abs(p_iter.x)*C;", "A": 1.1, "B": 0.1, "C": 0.25, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n p=mod(p,2.)-1.;\n p=abs(p)-1.;\n if(p.x < p.z)p.xz=p.zx;\n if(p.y < p.z)p.yz=p.zy;\n if(p.x < p.y)p.xy=p.yx;\n float s=1.;\n for(int i=0;i<10;i++){\n float r2=2./clamp(dot(p,p),.1,1.);\n p=abs(p)*r2-vec3(.6,.6,3.5);\n s*=r2;\n }\n return length(p)/s;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 2.0\n// B: 2.0\n// C: 0.1\n// Offset: (0.6,0.6,3.5)\n\n float3 p_iter =fmod(p,A)-1.0;\n p_iter=abs(p_iter)-1.0;\n if(p_iter.x < p_iter.z)p_iter.xz=p_iter.zx;\n if(p_iter.y < p_iter.z)p_iter.yz=p_iter.zy;\n if(p_iter.x < p_iter.y)p_iter.xy=p_iter.yx;\n float s=1.0;\n for(int i=0;i<10;i++){\n float r2=B/clamp(dot(p_iter,p_iter),C,1.0);\n p_iter=mul(abs(p_iter),r2)-Offset;\n s=mul(s, r2);\n }\n return length(p_iter)/s;", "A": 2.0, "B": 2.0, "C": 0.1, "OffsetX": 0.6, "OffsetY": 0.6, "OffsetZ": 3.5 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de( vec3 p ) {\n float itr=10.,r=0.1;\n p=mod(p-1.5,3.)-1.5;\n p=abs(p)-1.3;\n if(p.x < p.z)p.xz=p.zx;\n if(p.y < p.z)p.yz=p.zy;\n if(p.x < p.y)p.xy=p.yx;\n float s=1.;\n p-=vec3(.5,-.3,1.5);\n for(float i=0.;i++ < itr;) {\n float r2=2./clamp(dot(p,p),.1,1.);\n p=abs(p)*r2;\n p-=vec3(.7,.3,5.5);\n s*=r2;\n }\n return length(p.xy)/(s-r);\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 10.0\n// B: 0.1\n// C: 1.5\n// Offset: (0.5,-0.3,1.5)\n\n float itr=A,r=B;\n float3 p_iter=fmod(p-1.5,3.0)-C;\n p_iter=abs(p_iter)-1.3;\n if(p_iter.x < p_iter.z)p_iter.xz=p_iter.zx;\n if(p_iter.y < p_iter.z)p_iter.yz=p_iter.zy;\n if(p_iter.x < p_iter.y)p_iter.xy=p_iter.yx;\n float s=1.0;\n p_iter-=Offset;\n for(float i=0.0;i++ < itr;) {\n float r2=2.0/clamp(dot(p_iter,p_iter),0.1,1.0);\n p_iter=mul(abs(p_iter),r2);\n p_iter-=float3(0.7,0.3,5.5);\n s=mul(s, r2);\n }\n return length(p_iter.xy)/(s-r);", "A": 10.0, "B": 0.1, "C": 1.5, "OffsetX": 0.5, "OffsetY": -0.3, "OffsetZ": 1.5 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de( vec3 p ) {\n float s=2.,r2;\n p=abs(p);\n for(int i=0; i<12;i++) {\n p=1.-abs(p-1.);\n r2=1.2/dot(p,p);\n p*=r2; s*=r2;\n }\n return length(cross(p,normalize(vec3(1))))/s-0.003;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 2.0\n// B: 1.2\n// C: 0.003\n// Offset: N/A\n\n float s=A,r2;\n float3 p_iter=abs(p);\n for(int i=0; i<12;i++) {\n p_iter=1.0-abs(p_iter-1.0);\n r2=B/dot(p_iter,p_iter);\n p_iter=mul(p_iter, r2); s=mul(s, r2);\n }\n return length(cross(p_iter,normalize(float3(1))))/s-C;", "A": 2.0, "B": 1.2, "C": 0.003, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de( vec3 p ){\n float s=2.,r2;\n p=abs(p);\n for(int i=0; i<12;i++) {\n p=1.-abs(p-1.);\n r2=(i%3==1)?1.3:1.3/dot(p,p);\n p*=r2; s*=r2;\n }\n return length(cross(p,normalize(vec3(1))))/s-0.003;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 2.0\n// B: 1.3\n// C: 1.3\n// Offset: N/A\n\n float s=A,r2;\n float3 p_iter=abs(p);\n for(int i=0; i<12;i++) {\n p_iter=1.0-abs(p_iter-1.0);\n r2=(i%3==1)?B:C/dot(p_iter,p_iter);\n p_iter=mul(p_iter, r2); s=mul(s, r2);\n }\n return length(cross(p_iter,normalize(float3(1))))/s-0.003;", "A": 2.0, "B": 1.3, "C": 1.3, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "#define fold45(p)(p.y>p.x)?p.yx:p\n float de(vec3 p) {\n float scale = 2.1, off0 = .8, off1 = .3, off2 = .83;\n vec3 off =vec3(2.,.2,.1);\n float s=1.0;\n for(int i = 0;++i<20;) {\n p.xy = abs(p.xy);\n p.xy = fold45(p.xy);\n p.y -= off0;\n p.y = -abs(p.y);\n p.y += off0;\n p.x += off1;\n p.xz = fold45(p.xz);\n p.x -= off2;\n p.xz = fold45(p.xz);\n p.x += off1;\n p -= off;\n p *= scale;\n p += off;\n s *= scale;\n }\n return length(p)/s;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 2.1\n// B: 0.8\n// C: 0.3\n// Offset: N/A\n\n float scale = A, off0 = B, off1 = C, off2 = 0.83;\n float3 off =float3(2.0,0.2,0.1);\n float s=1.0;\n float3 p_iter = p;\n for(int i = 0;++i<20;) {\n p_iter.xy = abs(p_iter.xy);\n p_iter.xy = (p_iter.y>p_iter.x)?p_iter.yx:p_iter.xy;\n p_iter.y -= off0;\n p_iter.y = -abs(p_iter.y);\n p_iter.y += off0;\n p_iter.x += off1;\n p_iter.xz = (p_iter.z>p_iter.x)?p_iter.zx:p_iter.xz;\n p_iter.x -= off2;\n p_iter.xz = (p_iter.z>p_iter.x)?p_iter.zx:p_iter.xz;\n p_iter.x += off1;\n p_iter -= off;\n p_iter = mul(p_iter, scale);\n p_iter += off;\n s = mul(s, scale);\n }\n return length(p_iter)/s;", "A": 2.1, "B": 0.8, "C": 0.3, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de( vec3 p ){\n float s=4.;\n p=abs(p);\n vec3 off=p*4.6;\n for (float i=0.; i<8.; i++){\n p=1.-abs(abs(p-2.)-1.);\n float r=-13.*clamp(.38*max(1.3/dot(p,p),.7),0.,3.3);\n s*=r; p*=r; p+=off;\n }\n return length(cross(p,normalize(vec3(1,3,3))))/s-.006;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 4.0\n// B: 4.6\n// C: 13.0\n// Offset: N/A\n\n float s=A;\n float3 p_iter =abs(p);\n float3 off=p_iter*B;\n for (float i=0.0; i<8.0; i++){\n p_iter=1.0-abs(abs(p_iter-2.0)-1.0);\n float r=-C*clamp(0.38*max(1.3/dot(p_iter,p_iter),0.7),0.0,3.3);\n s=mul(s, r); p_iter=mul(p_iter, r); p_iter+=off;\n }\n return length(cross(p_iter,normalize(float3(1,3,3))))/s-0.006;", "A": 4.0, "B": 4.6, "C": 13.0, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "vec3 rotate(vec3 p,vec3 axis,float theta){\n vec3 v = cross(axis,p), u = cross(v, axis);\n return u * cos(theta) + v * sin(theta) + axis * dot(p, axis);\n }\n\n vec2 pmod(vec2 p, float r){\n float a = mod(atan(p.y, p.x), (M_PI*2) / r) - 0.5 * (M_PI*2) / r;\n return length(p) * vec2(-sin(a), cos(a));\n }\n\n float de(vec3 p){\n for(int i=0;i<5;i++){\n p.xy = pmod43(p.xy,12.0); p.y-=4.0;\n p.yz = pmod43(p.yz,16.0); p.z-=6.8;\n }\n return dot(abs(p),rotate43(normalize(vec3(2,1,3)),\n normalize(vec3(7,1,2)),1.8))-0.3;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: N/A\n// B: N/A\n// C: N/A\n// Offset: N/A\n\n// NOTE: This shader uses undefined functions: pmod43, rotate43.\n// Conversion may be incorrect without their definitions.\n\n float3 p_iter = p;\n for(int i=0;i<5;i++){\n p_iter.xy = pmod43(p_iter.xy,12.0); p_iter.y-=4.0;\n p_iter.yz = pmod43(p_iter.yz,16.0); p_iter.z-=6.8;\n }\n return dot(abs(p_iter),rotate43(normalize(float3(2,1,3)),\n normalize(float3(7,1,2)),1.8))-0.3;", "A": 0.0, "B": 0.0, "C": 0.0, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "#define pmod(p,n)length(p)*sin(vec2(0.,M_PI/2.)\\\n +mod(atan(p.y,p.x),2.*M_PI/n)-M_PI/n)\n #define fold(p,v)p-2.*min(0.,dot(p,v))*v;\n\n float de( vec3 p ){\n float s = 1.0;\n p.z=fract(p.z)-.5;\n for(int i=0;i<20;i++){ // expensive\n p.y += .15;\n p.xz = abs(p.xz);\n for(int j=0;j<2;j++){\n p.xy = pmod(p.xy,8.);\n p.y -= .18;\n }\n p.xy = fold(p.xy,normalize(vec2(1,-.8)));\n p.y = -abs(p.y);\n p.y += .4;\n p.yz = fold(p.yz,normalize(vec2(3,-1)));\n p.x -= .47;\n p.yz = fold(p.yz,normalize(vec2(2,-7)));\n p -= vec3(1.7,.4,0);\n float r2= 3.58/dot(p,p);\n p *= r2;\n p += vec3(1.8,.7,.0);\n s *= r2;\n }\n return length(p)/s;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 0.15\n// B: 0.18\n// C: 0.4\n// Offset: (1.7,0.4,0)\n\n float s = 1.0;\n float3 p_iter = p;\n p_iter.z=frac(p_iter.z)-0.5;\n for(int i=0;i<20;i++){ // expensive\n p_iter.y += A;\n p_iter.xz = abs(p_iter.xz);\n for(int j=0;j<2;j++){\n p_iter.xy = length(p_iter.xy)*sin(float2(0.0,3.14159265/2.0) +fmod(atan2(p_iter.xy.y,p_iter.xy.x),2.0*3.14159265/8.0)-3.14159265/8.0);\n p_iter.y -= B;\n }\n p_iter.xy = p_iter.xy-2.0*min(0.0,dot(p_iter.xy,normalize(float2(1,-0.8))))*normalize(float2(1,-0.8));\n p_iter.y = -abs(p_iter.y);\n p_iter.y += C;\n p_iter.yz = p_iter.yz-2.0*min(0.0,dot(p_iter.yz,normalize(float2(3,-1))))*normalize(float2(3,-1));\n p_iter.x -= 0.47;\n p_iter.yz = p_iter.yz-2.0*min(0.0,dot(p_iter.yz,normalize(float2(2,-7))))*normalize(float2(2,-7));\n p_iter -= Offset;\n float r2= 3.58/dot(p_iter,p_iter);\n p_iter = mul(p_iter, r2);\n p_iter += float3(1.8,0.7,0.0);\n s = mul(s, r2);\n }\n return length(p_iter)/s;", "A": 0.15, "B": 0.18, "C": 0.4, "OffsetX": 1.7, "OffsetY": 0.4, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de( vec3 p ){\n p.z-=2.5;\n float s = 3.;\n float e = 0.;\n for(int j=0;j++<8;)\n s*=e=3.8/clamp(dot(p,p),0.,2.),\n p=abs(p)*e-vec3(1,15,1);\n return length(cross(p,vec3(1,1,-1)*.577))/s;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 2.5\n// B: 3.0\n// C: 3.8\n// Offset: (1,15,1)\n\n float3 p_iter = p;\n p_iter.z-=A;\n float s = B;\n float e = 0.0;\n for(int j=0;j++<8;)\n s=mul(s, e=C/clamp(dot(p_iter,p_iter),0.0,2.0)),\n p_iter=mul(abs(p_iter),e)-Offset;\n return length(cross(p_iter,float3(1,1,-1)*0.577))/s;", "A": 2.5, "B": 3.0, "C": 3.8, "OffsetX": 1.0, "OffsetY": 15.0, "OffsetZ": 1.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de( vec3 p ){\n float s = 2.;\n float e = 0.;\n for(int j=0;++j<7;)\n p.xz=abs(p.xz)-2.3,\n p.z>p.x?p=p.zyx:p,\n p.z=1.5-abs(p.z-1.3+sin(p.z)*.2),\n p.y>p.x?p=p.yxz:p,\n p.x=3.-abs(p.x-5.+sin(p.x*3.)*.2),\n p.y>p.x?p=p.yxz:p,\n p.y=.9-abs(p.y-.4),\n e=12.*clamp(.3/min(dot(p,p),1.),.0,1.)+\n 2.*clamp(.1/min(dot(p,p),1.),.0,1.),\n p=e*p-vec3(7,1,1),\n s*=e;\n return length(p)/s;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 2.0\n// B: 2.3\n// C: 1.5\n// Offset: (7,1,1)\n\n float s = A;\n float e = 0.0;\n float3 p_iter = p;\n for(int j=0;++j<7;)\n p_iter.xz=abs(p_iter.xz)-B,\n p_iter.z>p_iter.x?p_iter=p_iter.zyx:p_iter,\n p_iter.z=C-abs(p_iter.z-1.3+sin(p_iter.z)*0.2),\n p_iter.y>p_iter.x?p_iter=p_iter.yxz:p_iter,\n p_iter.x=3.0-abs(p_iter.x-5.0+sin(p_iter.x*3.0)*0.2),\n p_iter.y>p_iter.x?p_iter=p_iter.yxz:p_iter,\n p_iter.y=0.9-abs(p_iter.y-0.4),\n e=12.0*clamp(0.3/min(dot(p_iter,p_iter),1.0),0.0,1.0)+\n 2.0*clamp(0.1/min(dot(p_iter,p_iter),1.0),0.0,1.0),\n p_iter=e*p_iter-Offset,\n s=mul(s,e);\n return length(p_iter)/s;", "A": 2.0, "B": 2.3, "C": 1.5, "OffsetX": 7.0, "OffsetY": 1.0, "OffsetZ": 1.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de( vec3 p ){\n float s = 4.;\n for(int i = 0; i < 8; i++) {\n p=mod(p-1.,2.)-1.;\n float r2=(i%3==0)?1.5:1.2/dot(p,p);\n p*=r2; s*=r2;\n }\n vec3 q=p/s;\n q.xz=mod(q.xz-.002,.004)-.002;\n return min(length(q.yx)-.0003,length(q.yz)-.0003);\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 4.0\n// B: 1.5\n// C: 1.2\n// Offset: N/A\n\n float s = A;\n float3 p_iter = p;\n for(int i = 0; i < 8; i++) {\n p_iter=fmod(p_iter-1.0,2.0)-1.0;\n float r2=(i%3==0)?B:C/dot(p_iter,p_iter);\n p_iter=mul(p_iter,r2); s=mul(s,r2);\n }\n float3 q=p_iter/s;\n q.xz=fmod(q.xz-0.002,0.004)-0.002;\n return min(length(q.yx)-0.0003,length(q.yz)-0.0003);", "A": 4.0, "B": 1.5, "C": 1.2, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de( vec3 p ){\n p.z-=-1.;\n #define fold(p,v)p-2.*min(0.,dot(p,v))*v;\n float s=3., l=0.;\n for(int i = 0;++i<15;){ \n p.xy=fold(p.xy,normalize(vec2(1,-1.3)));\n p.y=-abs(p.y);\n p.y+=.5;\n p.xz=abs(p.xz);\n p.yz=fold(p.yz,normalize(vec2(8,-1)));\n p.x-=.5;\n p.yz=fold(p.yz,normalize(vec2(1,-2)));\n p-=vec3(1.8,.4,.1);\n l = 2.6/dot(p,p); p*=l;\n p+=vec3(1.8,.7,.2); s*=l;\n }\n return length(p.xy)/s;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 3.0\n// B: 0.5\n// C: 0.5\n// Offset: (1.8,0.4,0.1)\n\n float3 p_iter = p;\n p_iter.z-=-1.0;\n float s=A, l=0.0;\n for(int i = 0;++i<15;){ \n p_iter.xy=p_iter.xy-2.0*min(0.0,dot(p_iter.xy,normalize(float2(1,-1.3))))*normalize(float2(1,-1.3));\n p_iter.y=-abs(p_iter.y);\n p_iter.y+=B;\n p_iter.xz=abs(p_iter.xz);\n p_iter.yz=p_iter.yz-2.0*min(0.0,dot(p_iter.yz,normalize(float2(8,-1))))*normalize(float2(8,-1));\n p_iter.x-=C;\n p_iter.yz=p_iter.yz-2.0*min(0.0,dot(p_iter.yz,normalize(float2(1,-2))))*normalize(float2(1,-2));\n p_iter-=Offset;\n l = 2.6/dot(p_iter,p_iter); p_iter=mul(p_iter,l);\n p_iter+=float3(1.8,0.7,0.2); s=mul(s,l);\n }\n return length(p_iter.xy)/s;", "A": 3.0, "B": 0.5, "C": 0.5, "OffsetX": 1.8, "OffsetY": 0.4, "OffsetZ": 0.1 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float lpNorm(vec3 p, float n){\n p = pow(abs(p), vec3(n));\n return pow(p.x+p.y+p.z, 1.0/n);\n }\n\n float de(vec3 p){\n float s = 1.;\n for(int i = 0; i < 9; i++) {\n p=p-2.*round(p/2.);\n float r2=1.1/max(pow(lpNorm(p.xyz, 4.5),1.6),.15);\n p*=r2; s*=r2;\n }\n return length(p)/s-.001;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 1.1\n// B: 4.5\n// C: 1.6\n// Offset: N/A\n\n float s = 1.0;\n float3 p_iter = p;\n for(int i = 0; i < 9; i++) {\n p_iter=p_iter-2.0*round(p_iter/2.0);\n // Inlined lpNorm\n float lpNormVal;\n {\n float3 p_lp = pow(abs(p_iter.xyz), float3(B));\n lpNormVal = pow(p_lp.x+p_lp.y+p_lp.z, 1.0/B);\n }\n float r2=A/max(pow(lpNormVal,C),0.15);\n p_iter=mul(p_iter,r2); s=mul(s,r2);\n }\n return length(p_iter)/s-0.001;", "A": 1.1, "B": 4.5, "C": 1.6, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "#define rot(a) mat2(cos(a),sin(a),-sin(a),cos(a))\n float hash(float x){\n return fract(sin(x*234.123+156.2));\n }\n float lpNorm(vec3 p, float n){\n p = pow(abs(p), vec3(n));\n return pow(p.x+p.y+p.z, 1.0/n);\n }\n float de(vec3 p){\n vec2 id=floor(p.xz);\n p.xz=mod(p.xz,1.)-.5;\n p.y=abs(p.y)-.5;\n p.y=abs(p.y)-.5;\n p.xy*=rot(hash(dot(id,vec2(12.3,46.7))));\n p.yz*=rot(hash(dot(id,vec2(32.9,76.2))));\n float s = 1.;\n for(int i = 0; i < 6; i++) {\n float r2=1.2/pow(lpNorm(p.xyz, 5.0),1.5);\n p-=.1; p*=r2; s*=r2; p=p-2.*round(p/2.);\n }\n return .6*dot(abs(p),normalize(vec3(1,2,3)))/s-.002;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 1.2\n// B: 5.0\n// C: 1.5\n// Offset: N/A\nfloat hash(float x){\n return frac(sin(x*234.123+156.2));\n}\nfloat lpNorm(float3 p, float n){\n p = pow(abs(p), float3(n));\n return pow(p.x+p.y+p.z, 1.0/n);\n}\n\n float2 id=floor(p.xz);\n float3 p_iter = p;\n p_iter.xz=fmod(p_iter.xz,1.0)-0.5;\n p_iter.y=abs(p_iter.y)-0.5;\n p_iter.y=abs(p_iter.y)-0.5;\n p_iter.xy=mul(p_iter.xy, float2x2(cos(hash(dot(id,float2(12.3,46.7)))),sin(hash(dot(id,float2(12.3,46.7)))),-sin(hash(dot(id,float2(12.3,46.7)))),cos(hash(dot(id,float2(12.3,46.7))))));\n p_iter.yz=mul(p_iter.yz, float2x2(cos(hash(dot(id,float2(32.9,76.2)))),sin(hash(dot(id,float2(32.9,76.2)))),-sin(hash(dot(id,float2(32.9,76.2)))),cos(hash(dot(id,float2(32.9,76.2))))));\n float s = 1.0;\n for(int i = 0; i < 6; i++) {\n float r2=A/pow(lpNorm(p_iter.xyz, B),C);\n p_iter-=0.1; p_iter=mul(p_iter,r2); s=mul(s,r2); p_iter=p_iter-2.0*round(p_iter/2.0);\n }\n return 0.6*dot(abs(p_iter),normalize(float3(1,2,3)))/s-0.002;", "A": 1.2, "B": 5.0, "C": 1.5, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "#define rot(a) mat2(cos(a),sin(a),-sin(a),cos(a))\n float de(vec3 p){\n for(int j=0;++j<8;)\n p.z-=.3,\n p.xz=abs(p.xz),\n p.xz=(p.z>p.x)?p.zx:p.xz,\n p.xy=(p.y>p.x)?p.yx:p.xy,\n p.z=1.-abs(p.z-1.),\n p=p*3.-vec3(10,4,2);\n\n return length(p)/6e3-.001;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 0.3\n// B: 3.0\n// C: 0.001\n// Offset: (10,4,2)\n\n float3 p_iter = p;\n for(int j=0;++j<8;)\n p_iter.z-=A,\n p_iter.xz=abs(p_iter.xz),\n p_iter.xz=(p_iter.z>p_iter.x)?p_iter.zx:p_iter.xz,\n p_iter.xy=(p_iter.y>p_iter.x)?p_iter.yx:p_iter.xy,\n p_iter.z=1.0-abs(p_iter.z-1.0),\n p_iter=p_iter*B-Offset;\n\n return length(p_iter)/6e3-C;", "A": 0.3, "B": 3.0, "C": 0.001, "OffsetX": 10.0, "OffsetY": 4.0, "OffsetZ": 2.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float lpNorm(vec3 p, float n){\n p = pow(abs(p),vec3(n));\n return pow(p.x+p.y+p.z,1./n);\n }\n float de( vec3 p ){\n float scale=4.5;\n float mr2=.5;\n float off=.5;\n float s=1.;\n vec3 p0 = p;\n for (int i=0; i<16; i++) {\n if(i%3==0)p=p.yzx;\n if(i%2==1)p=p.yxz;\n p -= clamp(p,-1.,1.)*2.;\n float r2=pow(lpNorm(p.xyz,5.),2.);\n float g=clamp(mr2*max(1./r2,1.),0.,1.);\n p=p*scale*g+p0*off;\n s=s*scale*g+off;\n }\n return length(p)/s-.01;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 4.5\n// B: 0.5\n// C: 0.5\n// Offset: N/A\nfloat lpNorm(float3 p, float n){\n p = pow(abs(p),float3(n));\n return pow(p.x+p.y+p.z,1.0/n);\n}\n\n float scale=A;\n float mr2=B;\n float off=C;\n float s=1.0;\n float3 p_iter = p;\n float3 p0 = p_iter;\n for (int i=0; i<16; i++) {\n if(i%3==0)p_iter=p_iter.yzx;\n if(i%2==1)p_iter=p_iter.yxz;\n p_iter -= clamp(p_iter,-1.0,1.0)*2.0;\n float r2=pow(lpNorm(p_iter.xyz,5.0),2.0);\n float g=clamp(mr2*max(1.0/r2,1.0),0.0,1.0);\n p_iter=p_iter*scale*g+p0*off;\n s=s*scale*g+off;\n }\n return length(p_iter)/s-0.01;", "A": 4.5, "B": 0.5, "C": 0.5, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n float s=2.;\n float e=0.;\n vec3 q=vec3(3,3,.0);\n for(int i=0; i++<7; p=q-abs(p-q*.4))\n s*=e=15./min(dot(p,p),15.),\n p=abs(p)*e-2.;\n return (length(p.xz)-.5)/s;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 2.0\n// B: 15.0\n// C: 0.4\n// Offset: N/A\n\n float s=A;\n float e=0.0;\n float3 p_iter = p;\n float3 q=float3(3,3,0.0);\n for(int i=0; i++<7; p_iter=q-abs(p_iter-q*C))\n s=mul(s, e=B/min(dot(p_iter,p_iter),15.0)),\n p_iter=mul(abs(p_iter),e)-2.0;\n return (length(p_iter.xz)-0.5)/s;", "A": 2.0, "B": 15.0, "C": 0.4, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n vec3 q;\n p-=vec3(1.,.1,.1);\n q=p;\n float s=1.5;\n float e=0.;\n for(int j=0;j++<15;s*=e)\n p=sign(p)*(1.2-abs(p-1.2)),\n p=p*(e=8./clamp(dot(p,p),.3,5.5))+q*2.;\n return length(p)/s;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 1.5\n// B: 1.2\n// C: 1.2\n// Offset: (1.0,0.1,0.1)\n\n float3 q;\n float3 p_iter = p-Offset;\n q=p_iter;\n float s=A;\n float e=0.0;\n for(int j=0;j++<15;s=mul(s,e))\n p_iter=sign(p_iter)*(B-abs(p_iter-C)),\n p_iter=p_iter*(e=8.0/clamp(dot(p_iter,p_iter),0.3,5.5))+q*2.0;\n return length(p_iter)/s;", "A": 1.5, "B": 1.2, "C": 1.2, "OffsetX": 1.0, "OffsetY": 0.1, "OffsetZ": 0.1 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n p.xz=fract(p.xz)-.5;\n float k=1.;\n float s=0.;\n for(int i=0;i++<9;)\n s=2./clamp(dot(p,p),.1,1.),\n p=abs(p)*s-vec3(.5,3,.5),\n k*=s;\n return length(p)/k-.001;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 0.5\n// B: 2.0\n// C: 0.1\n// Offset: (0.5,3,0.5)\n\n float3 p_iter = p;\n p_iter.xz=frac(p_iter.xz)-A;\n float k=1.0;\n float s=0.0;\n for(int i=0;i++<9;)\n s=B/clamp(dot(p_iter,p_iter),C,1.0),\n p_iter=mul(abs(p_iter),s)-Offset,\n k=mul(k,s);\n return length(p_iter)/k-0.001;", "A": 0.5, "B": 2.0, "C": 0.1, "OffsetX": 0.5, "OffsetY": 3.0, "OffsetZ": 0.5 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n p.xz=fract(p.xz)-.5;\n float k=1.;\n float s=0.;\n for(int i=0;i++<9;)\n s=2./clamp(dot(p,p),.1,1.),\n p=abs(p)*s-vec3(.5,3,.5),\n k*=s;\n return length(p)/k-.001;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 0.5\n// B: 2.0\n// C: 0.1\n// Offset: (0.5,3,0.5)\n\n float3 p_iter = p;\n p_iter.xz=frac(p_iter.xz)-A;\n float k=1.0;\n float s=0.0;\n for(int i=0;i++<9;)\n s=B/clamp(dot(p_iter,p_iter),C,1.0),\n p_iter=mul(abs(p_iter),s)-Offset,\n k=mul(k,s);\n return length(p_iter)/k-0.001;", "A": 0.5, "B": 2.0, "C": 0.1, "OffsetX": 0.5, "OffsetY": 3.0, "OffsetZ": 0.5 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "#define rot(a) mat2(cos(a),sin(a),-sin(a),cos(a))\n float de(vec3 p){\n p=abs(p)-3.;\n if(p.x < p.z)p.xz=p.zx;\n if(p.y < p.z)p.yz=p.zy;\n if(p.x < p.y)p.xy=p.yx;\n float s=2.; vec3 off=p*.5;\n for(int i=0;i<12;i++){\n p=1.-abs(p-1.);\n float k=-1.1*max(1.5/dot(p,p),1.5);\n s*=abs(k); p*=k; p+=off;\n p.zx*=rot(-1.2);\n }\n float a=2.5;\n p-=clamp(p,-a,a);\n return length(p)/s;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 3.0\n// B: 2.0\n// C: 0.5\n// Offset: N/A\n\n float3 p_iter =abs(p)-A;\n if(p_iter.x < p_iter.z)p_iter.xz=p_iter.zx;\n if(p_iter.y < p_iter.z)p_iter.yz=p_iter.zy;\n if(p_iter.x < p_iter.y)p_iter.xy=p_iter.yx;\n float s=B; float3 off=p_iter*C;\n for(int i=0;i<12;i++){\n p_iter=1.0-abs(p_iter-1.0);\n float k=-1.1*max(1.5/dot(p_iter,p_iter),1.5);\n s=mul(s, abs(k)); p_iter=mul(p_iter, k); p_iter+=off;\n p_iter.zx=mul(p_iter.zx, float2x2(cos(-1.2),sin(-1.2),-sin(-1.2),cos(-1.2)));\n }\n float a=2.5;\n p_iter-=clamp(p_iter,-a,a);\n return length(p_iter)/s;", "A": 3.0, "B": 2.0, "C": 0.5, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "xem", "OriginalCode": "float de(vec3 p){\n vec4 o=vec4(p,1);\n vec4 q=o;\n for(float i=0.;i<9.;i++){\n o.xyz=clamp(o.xyz,-1.,1.)*2.-o.xyz;\n o=o*clamp(max(.25/dot(o.xyz,o.xyz),.25),0.,1.)*vec4(11.2)+q;\n }\n return (length(o.xyz)-1.)/o.w-5e-4;\n }", "ConvertedCode": "// author: xem\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 0.25\n// B: 0.25\n// C: N/A\n// Offset: N/A\n\n float4 o=float4(p,1);\n float4 q=o;\n for(float i=0.0;i<9.0;i++){\n o.xyz=clamp(o.xyz,-1.0,1.0)*2.0-o.xyz;\n o=o*clamp(max(A/dot(o.xyz,o.xyz),B),0.0,1.0)*float4(11.2)+q;\n }\n return (length(o.xyz)-1.0)/o.w-5e-4;", "A": 0.25, "B": 0.25, "C": 0.0, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n float g=1.;\n float e=0.;\n vec3 q=vec3(0);\n p.z-=1.;\n q=p;\n float s=2.;\n for(int j=0;j++<8;)\n p-=clamp(p,-.9,.9)*2.,\n p=p*(e=3./min(dot(p,p),1.))+q,\n s*=e;\n return length(p)/s;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 1.0\n// B: 2.0\n// C: 3.0\n// Offset: N/A\n\n float g=1.0;\n float e=0.0;\n float3 q=float3(0);\n float3 p_iter = p;\n p_iter.z-=A;\n q=p_iter;\n float s=B;\n for(int j=0;j++<8;)\n p_iter-=clamp(p_iter,-0.9,0.9)*2.0,\n p_iter=p_iter*(e=C/min(dot(p_iter,p_iter),1.0))+q,\n s=mul(s,e);\n return length(p_iter)/s;", "A": 1.0, "B": 2.0, "C": 3.0, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n vec3 q;\n p.z-=1.5;\n q=p;\n float e=0.;\n float s=3.;\n for(int j=0;j++<8;s*=e)\n p=sign(p)*(1.-abs(abs(p-2.)-1.)),\n p=p*(e=6./clamp(dot(p,p),.3,3.))+q-vec3(8,.2,8);\n return length(p)/s;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 1.5\n// B: 3.0\n// C: 6.0\n// Offset: (8,0.2,8)\n\n float3 q;\n float3 p_iter = p;\n p_iter.z-=A;\n q=p_iter;\n float e=0.0;\n float s=B;\n for(int j=0;j++<8;s=mul(s,e))\n p_iter=sign(p_iter)*(1.0-abs(abs(p_iter-2.0)-1.0)),\n p_iter=p_iter*(e=C/clamp(dot(p_iter,p_iter),0.3,3.0))+q-Offset;\n return length(p_iter)/s;", "A": 1.5, "B": 3.0, "C": 6.0, "OffsetX": 8.0, "OffsetY": 0.2, "OffsetZ": 8.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n #define R(a)a=vec2(a.x+a.y,a.x-a.y)*.7\n #define G(a,n)R(a);a=abs(a)-n;R(a)\n p=fract(p)-.5;\n G(p.xz,.3);\n G(p.zy,.1);\n G(p.yz,.15);\n return .6*length(p.xy)-.01;\n #undef R\n #undef G\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 0.5\n// B: 0.3\n// C: 0.1\n// Offset: N/A\n\n float3 p_iter =frac(p)-A;\n p_iter.xz=mul(float2(p_iter.xz.x+p_iter.xz.y,p_iter.xz.x-p_iter.xz.y),0.7);p_iter.xz=abs(p_iter.xz)-B;p_iter.xz=mul(float2(p_iter.xz.x+p_iter.xz.y,p_iter.xz.x-p_iter.xz.y),0.7);\n p_iter.zy=mul(float2(p_iter.zy.x+p_iter.zy.y,p_iter.zy.x-p_iter.zy.y),0.7);p_iter.zy=abs(p_iter.zy)-C;p_iter.zy=mul(float2(p_iter.zy.x+p_iter.zy.y,p_iter.zy.x-p_iter.zy.y),0.7);\n p_iter.yz=mul(float2(p_iter.yz.x+p_iter.yz.y,p_iter.yz.x-p_iter.yz.y),0.7);p_iter.yz=abs(p_iter.yz)-0.15;p_iter.yz=mul(float2(p_iter.yz.x+p_iter.yz.y,p_iter.yz.x-p_iter.yz.y),0.7);\n return 0.6*length(p_iter.xy)-0.01;", "A": 0.5, "B": 0.3, "C": 0.1, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n float s=2.;\n float l=dot(p,p);\n float e=0.;\n escape=0.;\n p=abs(abs(p)-.7)-.5;\n p.x < p.y?p=p.yxz:p;\n p.y < p.z?p=p.xzy:p;\n for(int i=0;i++<8;){ \n s*=e=2./clamp(dot(p,p),.004+tan(12.)*.002,1.35);\n p=abs(p)*e-vec2(.5*l,12.).xxy;\n }\n return length(p-clamp(p,-1.,1.))/s;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 2.0\n// B: 0.7\n// C: 0.5\n// Offset: N/A\n\n float s=A;\n float l=dot(p,p);\n float e=0.0;\n //escape=0.0;\n float3 p_iter =abs(abs(p)-B)-C;\n p_iter.x < p_iter.y?p_iter=p_iter.yxz:p_iter;\n p_iter.y < p_iter.z?p_iter=p_iter.xzy:p_iter;\n for(int i=0;i++<8;){ \n s=mul(s, e=2.0/clamp(dot(p_iter,p_iter),0.004+tan(12.0)*0.002,1.35));\n p_iter=mul(abs(p_iter),e)-float2(0.5*l,12.0).xxy;\n }\n return length(p_iter-clamp(p_iter,-1.0,1.0))/s;", "A": 2.0, "B": 0.7, "C": 0.5, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n p.z-=1.5;\n vec3 q=p;\n float s=1.5;\n float e=0.;\n for(int j=0;j++<8;s*=e)\n p=sign(p)*(1.2-abs(p-1.2)),\n p=p*(e=8./clamp(dot(p,p),.6,5.5))+q-vec3(.3,8,.3);\n return length(p)/s;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 1.5\n// B: 1.5\n// C: 1.2\n// Offset: (0.3,8,0.3)\n\n float3 q;\n float3 p_iter = p;\n p_iter.z-=A;\n q=p_iter;\n float e=0.0;\n float s=B;\n for(int j=0;j++<8;s=mul(s,e))\n p_iter=sign(p_iter)*(C-abs(p_iter-1.2)),\n p_iter=p_iter*(e=8.0/clamp(dot(p_iter,p_iter),0.6,5.5))+q-Offset;\n return length(p_iter)/s;", "A": 1.5, "B": 1.5, "C": 1.2, "OffsetX": 0.3, "OffsetY": 8.0, "OffsetZ": 0.3 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n float e=1.,B=2.95,H=.9, s=2.;\n p.z=mod(p.z-2.,4.)-2.;\n for(int j=0;j++<8;)\n {\n p=abs(p);\n p.x < p.z?p=p.zyx:p;\n p.x=H-abs(p.x-H);\n p.y < p.z?p=p.xzy:p;\n p.xz+=.1;\n p.y < p.x?p=p.yxz:p;\n p.y-=.1;\n }\n p*=B; p-=2.5; s*=B;\n return length(p.xy)/s-.007;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 2.95\n// B: 0.9\n// C: 2.0\n// Offset: N/A\n\n float e=1.0,_B=A,H=B, s=C;\n float3 p_iter = p;\n p_iter.z=fmod(p_iter.z-2.0,4.0)-2.0;\n for(int j=0;j++<8;)\n {\n p_iter=abs(p_iter);\n p_iter.x < p_iter.z?p_iter=p_iter.zyx:p_iter;\n p_iter.x=H-abs(p_iter.x-H);\n p_iter.y < p_iter.z?p_iter=p_iter.xzy:p_iter;\n p_iter.xz+=0.1;\n p_iter.y < p_iter.x?p_iter=p_iter.yxz:p_iter;\n p_iter.y-=0.1;\n }\n p_iter=mul(p_iter,_B); p_iter-=2.5; s=mul(s,_B);\n return length(p_iter.xy)/s-0.007;", "A": 2.95, "B": 0.9, "C": 2.0, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n #define hash(n) fract(sin(n*234.567+123.34))\n float seed=dot(floor((p+3.5)/7.)+3.,vec3(123.12,234.56,678.22));\n p-=clamp(p,-3.5,3.5)*2.;\n float scale=-5.;\n float mr2=.38;\n float off=1.2;\n float s=3.;\n p=abs(p);\n vec3 p0 = p;\n for (float i=0.; i<4.+hash(seed)*6.; i++){\n p=1.-abs(p-1.);\n float g=clamp(mr2*max(1.2/dot(p,p),1.),0.,1.);\n p=p*scale*g+p0*off;\n s=s*abs(scale)*g+off;\n }\n return length(cross(p,normalize(vec3(1))))/s-.005;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 5.0\n// B: 0.38\n// C: 1.2\n// Offset: N/A\n\n float seed=dot(floor((p+3.5)/7.0)+3.0,float3(123.12,234.56,678.22));\n float3 p_iter = p - clamp(p,-3.5,3.5)*2.0;\n float scale=-A;\n float mr2=B;\n float off=C;\n float s=3.0;\n p_iter=abs(p_iter);\n float3 p0 = p_iter;\n for (float i=0.0; i<4.0+frac(sin(seed*234.567+123.34))*6.0; i++){\n p_iter=1.0-abs(p_iter-1.0);\n float g=clamp(mr2*max(1.2/dot(p_iter,p_iter),1.0),0.0,1.0);\n p_iter=p_iter*scale*g+p0*off;\n s=s*abs(scale)*g+off;\n }\n return length(cross(p_iter,normalize(float3(1))))/s-0.005;", "A": 5.0, "B": 0.38, "C": 1.2, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n #define hash(n) fract(sin(n*234.567+123.34))\n float zoom=2.1;\n p*=zoom;\n float seed=dot(floor((p+3.5)/7.)+3.,vec3(123.12,234.56,678.22));\n p-=clamp(p,-8.,8.)*2.;\n float s=3.*zoom;\n p=abs(p);\n vec3 p0 = p*1.6;\n for (float i=0.; i<10.; i++){\n p=1.-abs(abs(p-2.)-1.);\n float g=-8.*clamp(.43*max(1.2/dot(p,p),.8),0.,1.3);\n s*=abs(g); p*=g; p+=p0;\n }\n return length(cross(p,normalize(vec3(1))))/s-.005;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 2.1\n// B: 8.0\n// C: 3.0\n// Offset: N/A\n\n float zoom=A;\n float3 p_iter = p;\n p_iter=mul(p_iter,zoom);\n float seed=dot(floor((p_iter+3.5)/7.0)+3.0,float3(123.12,234.56,678.22));\n p_iter-=clamp(p_iter,-B,8.0)*2.0;\n float s=C*zoom;\n p_iter=abs(p_iter);\n float3 p0 = p_iter*1.6;\n for (float i=0.0; i<10.0; i++){\n p_iter=1.0-abs(abs(p_iter-2.0)-1.0);\n float g=-8.0*clamp(0.43*max(1.2/dot(p_iter,p_iter),0.8),0.0,1.3);\n s=mul(s, abs(g)); p_iter=mul(p_iter,g); p_iter+=p0;\n }\n return length(cross(p_iter,normalize(float3(1))))/s-0.005;", "A": 2.1, "B": 8.0, "C": 3.0, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n p.z-=16.; float s=3.; float e=0.;\n p.y=abs(p.y)-1.8;\n p=clamp(p,-3.,3.)*2.-p;\n s*=e=6./clamp(dot(p,p),1.5,50.);\n p=abs(p)*e-vec3(0,1.8,0);\n p.xz =.8-abs(p.xz-2.);\n p.y =1.7-abs(p.y-2.);\n s*=e=12./clamp(dot(p,p),1.0,50.);\n p=abs(p)*e-vec2(.2,1).xyx;\n p.y =1.5-abs(p.y-2.);\n s*=e=16./clamp(dot(p,p),.1,9.);\n p=abs(p)*e-vec2(.3,-.7).xyx;\n return min(\n length(p.xz)-.5,\n length(vec2(length(p.xz)-12.,p.y))-3.\n )/s;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 16.0\n// B: 3.0\n// C: 1.8\n// Offset: (0,1.8,0)\n\n float3 p_iter = p;\n p_iter.z-=A; float s=B; float e=0.0;\n p_iter.y=abs(p_iter.y)-C;\n p_iter=clamp(p_iter,-3.0,3.0)*2.0-p_iter;\n s=mul(s, e=6.0/clamp(dot(p_iter,p_iter),1.5,50.0));\n p_iter=mul(abs(p_iter),e)-Offset;\n p_iter.xz =0.8-abs(p_iter.xz-2.0);\n p_iter.y =1.7-abs(p_iter.y-2.0);\n s=mul(s, e=12.0/clamp(dot(p_iter,p_iter),1.0,50.0));\n p_iter=mul(abs(p_iter),e)-float2(0.2,1).xyx;\n p_iter.y =1.5-abs(p_iter.y-2.0);\n s=mul(s, e=16.0/clamp(dot(p_iter,p_iter),0.1,9.0));\n p_iter=mul(abs(p_iter),e)-float2(0.3,-0.7).xyx;\n return min(\n length(p_iter.xz)-0.5,\n length(float2(length(p_iter.xz)-12.0,p_iter.y))-3.0\n )/s;", "A": 16.0, "B": 3.0, "C": 1.8, "OffsetX": 0.0, "OffsetY": 1.8, "OffsetZ": 0.0 }, { "Author": "Nameless", "OriginalCode": "float de(vec3 p0){\n vec4 p = vec4(p0/10., 1.);\n escape = 0.; p=abs(p);\n for(int i = 0; i < 8; i++){\n if(p.x > p.z)p.xz = p.zx;\n if(p.z > p.y)p.zy = p.yz;\n if(p.y > p.x)p.yx = p.xy;\n p*=(1.3/clamp(dot(p.xyz,p.xyz),0.1,1.));\n p.xyz-=vec3(.5,0.2,0.2);\n }\n float m = 1.5;\n p.xyz-=clamp(p.xyz,-m,m);\n return (length(p.xyz)/p.w)*10.;\n }", "ConvertedCode": "// author: Nameless\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 10.0\n// B: 1.3\n// C: 0.1\n// Offset: (0.5,0.2,0.2)\n\n float4 p_iter = float4(p/A, 1.0);\n //escape = 0.0; \n p_iter=abs(p_iter);\n for(int i = 0; i < 8; i++){\n if(p_iter.x > p_iter.z)p_iter.xz = p_iter.zx;\n if(p_iter.z > p_iter.y)p_iter.zy = p_iter.yz;\n if(p_iter.y > p_iter.x)p_iter.yx = p_iter.xy;\n p_iter=mul(p_iter,(B/clamp(dot(p_iter.xyz,p_iter.xyz),C,1.0)));\n p_iter.xyz-=Offset;\n }\n float m = 1.5;\n p_iter.xyz-=clamp(p_iter.xyz,-m,m);\n return (length(p_iter.xyz)/p_iter.w)*10.0;", "A": 10.0, "B": 1.3, "C": 0.1, "OffsetX": 0.5, "OffsetY": 0.2, "OffsetZ": 0.2 }, { "Author": "Nameless", "OriginalCode": "float de(vec3 p0){\n vec4 p = vec4(p0/10., 1.);\n escape = 0.; p=abs(p);\n if(p.x < p.z)p.xz = p.zx;\n if(p.z < p.y)p.zy = p.yz;\n if(p.y < p.x)p.yx = p.xy;\n for(int i = 0; i < 6; i++){\n if(p.x < p.z)p.xz = p.zx;\n if(p.z < p.y)p.zy = p.yz;\n if(p.y < p.x)p.yx = p.xy;\n p = abs(p);\n p*=(1.9/clamp(dot(p.xyz,p.xyz),0.1,1.));\n p.xyz-=vec3(0.2,1.9,0.6);\n }\n float m = 1.2;\n p.xyz-=clamp(p.xyz,-m,m);\n return (length(p.xyz)/p.w)*10.;\n }", "ConvertedCode": "// author: Nameless\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 10.0\n// B: 1.9\n// C: 0.1\n// Offset: (0.2,1.9,0.6)\n\n float4 p_iter = float4(p/A, 1.0);\n //escape = 0.0; \n p_iter=abs(p_iter);\n if(p_iter.x < p_iter.z)p_iter.xz = p_iter.zx;\n if(p_iter.z < p_iter.y)p_iter.zy = p_iter.yz;\n if(p_iter.y < p_iter.x)p_iter.yx = p_iter.xy;\n for(int i = 0; i < 6; i++){\n if(p_iter.x < p_iter.z)p_iter.xz = p_iter.zx;\n if(p_iter.z < p_iter.y)p_iter.zy = p_iter.yz;\n if(p_iter.y < p_iter.x)p_iter.yx = p_iter.xy;\n p_iter = abs(p_iter);\n p_iter=mul(p_iter,(B/clamp(dot(p_iter.xyz,p_iter.xyz),C,1.0)));\n p_iter.xyz-=Offset;\n }\n float m = 1.2;\n p_iter.xyz-=clamp(p_iter.xyz,-m,m);\n return (length(p_iter.xyz)/p_iter.w)*10.0;", "A": 10.0, "B": 1.9, "C": 0.1, "OffsetX": 0.2, "OffsetY": 1.9, "OffsetZ": 0.6 }, { "Author": "Nameless", "OriginalCode": "float de(vec3 p0){\n vec4 p = vec4(p0/10., 1.);\n escape = 0.; p=abs(p);\n if(p.x < p.z)p.xz = p.zx;\n if(p.z < p.y)p.zy = p.yz;\n if(p.y < p.x)p.yx = p.xy;\n for(int i = 0; i < 6; i++){\n if(p.x < p.z)p.xz = p.zx;\n if(p.z < p.y)p.zy = p.yz;\n if(p.y < p.x)p.yx = p.xy;\n p = abs(p);\n p*=(2./clamp(dot(p.xyz,p.xyz),0.1,1.));\n p.xyz-=vec3(0.9,1.9,0.9);\n }\n float m = 1.5;\n p.xyz-=clamp(p.xyz,-m,m);\n return (length(p.xyz)/p.w)*10.;\n }", "ConvertedCode": "// author: Nameless\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 10.0\n// B: 2.0\n// C: 0.1\n// Offset: (0.9,1.9,0.9)\n\n float4 p_iter = float4(p/A, 1.0);\n //escape = 0.0; \n p_iter=abs(p_iter);\n if(p_iter.x < p_iter.z)p_iter.xz = p_iter.zx;\n if(p_iter.z < p_iter.y)p_iter.zy = p_iter.yz;\n if(p_iter.y < p_iter.x)p_iter.yx = p_iter.xy;\n for(int i = 0; i < 6; i++){\n if(p_iter.x < p_iter.z)p_iter.xz = p_iter.zx;\n if(p_iter.z < p_iter.y)p_iter.zy = p_iter.yz;\n if(p_iter.y < p_iter.x)p_iter.yx = p_iter.xy;\n p_iter = abs(p_iter);\n p_iter=mul(p_iter,(B/clamp(dot(p_iter.xyz,p_iter.xyz),C,1.0)));\n p_iter.xyz-=Offset;\n }\n float m = 1.5;\n p_iter.xyz-=clamp(p_iter.xyz,-m,m);\n return (length(p_iter.xyz)/p_iter.w)*10.0;", "A": 10.0, "B": 2.0, "C": 0.1, "OffsetX": 0.9, "OffsetY": 1.9, "OffsetZ": 0.9 }, { "Author": "Ivan Dianov", "OriginalCode": "float de(vec3 p){\n #define rot(a) mat2(cos(a),sin(a),-sin(a),cos(a))\n p.z-=.25;\n float j=0.,c=0.,s=1.;\n p.y = fract(p.y)-.5;\n for(;j<10.;j++){\n p=abs(p);\n p-=vec2(.05,.5).xyx;\n p.xz*=rot(1.6);\n p.yx*=rot(.24);\n p*=2.; s*=2.;\n }\n return (length(p)-1.)/s*.5;\n }", "ConvertedCode": "// author: Ivan Dianov\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 0.25\n// B: 0.5\n// C: 0.05\n// Offset: N/A\n\n float3 p_iter = p;\n p_iter.z-=A;\n float j=0.0,c=0.0,s=1.0;\n p_iter.y = frac(p_iter.y)-B;\n for(;j<10.0;j++){\n p_iter=abs(p_iter);\n p_iter-=float2(C,0.5).xyx;\n p_iter.xz=mul(p_iter.xz, float2x2(cos(1.6),sin(1.6),-sin(1.6),cos(1.6)));\n p_iter.yx=mul(p_iter.yx, float2x2(cos(0.24),sin(0.24),-sin(0.24),cos(0.24)));\n p_iter=mul(p_iter, 2.0); s=mul(s, 2.0);\n }\n return (length(p_iter)-1.0)/s*0.5;", "A": 0.25, "B": 0.5, "C": 0.05, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "yonatan", "OriginalCode": "float de(vec3 p){\n float j = 0.5;\n for(p.xz=mod(p.xz,6.)-3.;++j<9.;p=3.*p-.9)\n p.xz=abs(p.xz),\n p.z>p.x?p=p.zyx:p,\n p.y>p.z?p=p.xzy:p,\n p.z--,\n p.x-=++p.y*.5;\n return min(.2,p.x/4e3-.2);\n }", "ConvertedCode": "// author: yonatan\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 0.5\n// B: 6.0\n// C: 3.0\n// Offset: N/A\n\n float j = A;\n float3 p_iter = p;\n for(p_iter.xz=fmod(p_iter.xz,B)-C;++j<9.0;p_iter=3.0*p_iter-0.9)\n p_iter.xz=abs(p_iter.xz),\n p_iter.z>p_iter.x?p_iter=p_iter.zyx:p_iter,\n p_iter.y>p_iter.z?p_iter=p_iter.xzy:p_iter,\n p_iter.z--,\n p_iter.x-=++p_iter.y*0.5;\n return min(0.2,p_iter.x/4e3-0.2);", "A": 0.5, "B": 6.0, "C": 3.0, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n float s=4.;\n float l=0;\n p.z-=.9;\n vec3 q=p;\n s=2.;\n for(int j=0;j++<9;)\n p-=clamp(p,-1.,1.)*2.,\n p=p*(l=8.8*clamp(.72/min(dot(p,p),2.),0.,1.))+q,\n s*=l;\n return length(p)/s;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 4.0\n// B: 0.9\n// C: 2.0\n// Offset: N/A\n\n float s=A;\n float l=0;\n float3 p_iter = p;\n p_iter.z-=B;\n float3 q=p_iter;\n s=C;\n for(int j=0;j++<9;)\n p_iter-=clamp(p_iter,-1.0,1.0)*2.0,\n p_iter=p_iter*(l=8.8*clamp(0.72/min(dot(p_iter,p_iter),2.0),0.0,1.0))+q,\n s=mul(s,l);\n return length(p_iter)/s;", "A": 4.0, "B": 0.9, "C": 2.0, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n float s=3., l=0.;\n vec3 q=p;\n p=mod(p,4.)-2.;\n p=abs(p);\n for(int j=0;j++<8;)\n p=1.-abs(p-1.),\n p=p*(l=-1.*max(1./dot(p,p),1.))+.5,\n s*=l;\n return max(.2-length(q.xy),length(p)/s);\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 3.0\n// B: 4.0\n// C: 2.0\n// Offset: N/A\n\n float s=A, l=0.0;\n float3 p_iter = p;\n float3 q=p_iter;\n p_iter=fmod(p_iter,B)-C;\n p_iter=abs(p_iter);\n for(int j=0;j++<8;)\n p_iter=1.0-abs(p_iter-1.0),\n p_iter=p_iter*(l=-1.0*max(1.0/dot(p_iter,p_iter),1.0))+0.5,\n s=mul(s,l);\n return max(0.2-length(q.xy),length(p_iter)/s);", "A": 3.0, "B": 4.0, "C": 2.0, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "eiffie", "OriginalCode": "float de(vec3 p){\n const int iters=5;\n const int iter2=3;\n const float scale=3.48;\n const vec3 offset=vec3(1.9,0.0,2.56);\n const float psni=pow(scale,-float(iters));\n const float psni2=pow(scale,-float(iter2));\n p = abs(mod(p+3., 12.)-6.)-3.;\n vec3 p2;\n for (int n = 0; n < iters; n++) {\n if(n==iter2)p2=p;\n p = abs(p);\n if (p.x < p.y)p.xy = p.yx;\n p.xz = p.zx;\n p = p*scale - offset*(scale-1.0);\n if(p.z<-0.5*offset.z*(scale-1.0))\n p.z+=offset.z*(scale-1.0);\n }\n float d1=(length(p.xy)-1.0)*psni;\n float d2=length(max(abs(p2)-vec3(0.2,5.1,1.3),0.0))*psni2;\n escape=(d1 < d2)?0.:1.;\n return min(d1,d2);\n }", "ConvertedCode": "// author: eiffie\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 3.48\n// B: N/A\n// C: N/A\n// Offset: (1.9,0.0,2.56)\n\n const int iters=5;\n const int iter2=3;\n const float scale=A;\n const float3 local_offset=Offset;\n const float psni=pow(scale,-float(iters));\n const float psni2=pow(scale,-float(iter2));\n float3 p_iter = abs(fmod(p+3.0, 12.0)-6.0)-3.0;\n float3 p2;\n for (int n = 0; n < iters; n++) {\n if(n==iter2)p2=p_iter;\n p_iter = abs(p_iter);\n if (p_iter.x < p_iter.y)p_iter.xy = p_iter.yx;\n p_iter.xz = p_iter.zx;\n p_iter = p_iter*scale - local_offset*(scale-1.0);\n if(p_iter.z<-0.5*local_offset.z*(scale-1.0))\n p_iter.z+=local_offset.z*(scale-1.0);\n }\n float d1=(length(p_iter.xy)-1.0)*psni;\n float d2=length(max(abs(p2)-float3(0.2,5.1,1.3),0.0))*psni2;\n //escape=(d1 < d2)?0.0:1.0;\n return min(d1,d2);", "A": 3.48, "B": 0.0, "C": 0.0, "OffsetX": 1.9, "OffsetY": 0.0, "OffsetZ": 2.56 }, { "Author": "yonatan", "OriginalCode": "float de(vec3 p){\n p=fract(p)-.5;\n vec3 O=vec3(2.,0,3.);\n for(int j=0;j++<7;){ \n p=abs(p);\n p=(p.x < p.y?p.zxy:p.zyx)*3.-O;\n if(p.z < -.5*O.z)\n p.z+=O.z;\n }\n return length(p.xy)/3e3;\n }", "ConvertedCode": "// author: yonatan\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 0.5\n// B: 3.0\n// C: 3.0\n// Offset: (2.0,0,3.0)\n\n float3 p_iter =frac(p)-A;\n float3 O=Offset;\n for(int j=0;j++<7;){ \n p_iter=abs(p_iter);\n p_iter=mul((p_iter.x < p_iter.y?p_iter.zxy:p_iter.zyx),C)-O;\n if(p_iter.z < -0.5*O.z)\n p_iter.z+=O.z;\n }\n return length(p_iter.xy)/3e3;", "A": 0.5, "B": 3.0, "C": 3.0, "OffsetX": 2.0, "OffsetY": 0.0, "OffsetZ": 3.0 }, { "Author": "yonatan", "OriginalCode": "float de(vec3 p){\n p=fract(p)-.5;\n vec3 O=vec3(2.,0,5.);\n for(int j=0;j++<7;){ \n p=abs(p);\n p=(p.x < p.y?p.zxy:p.zyx)*3.-O;\n if(p.z < -.5*O.z)\n p.z+=O.z;\n }\n return length(p.xy)/3e3;\n }", "ConvertedCode": "// author: yonatan\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 0.5\n// B: 3.0\n// C: 3.0\n// Offset: (2.0,0,5.0)\n\n float3 p_iter =frac(p)-A;\n float3 O=Offset;\n for(int j=0;j++<7;){ \n p_iter=abs(p_iter);\n p_iter=mul((p_iter.x < p_iter.y?p_iter.zxy:p_iter.zyx),C)-O;\n if(p_iter.z < -0.5*O.z)\n p_iter.z+=O.z;\n }\n return length(p_iter.xy)/3e3;", "A": 0.5, "B": 3.0, "C": 3.0, "OffsetX": 2.0, "OffsetY": 0.0, "OffsetZ": 5.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n vec3 a=vec3(.5);\n p.z-=55.; p = abs(p);\n float s=2., l=0.;\n for(int j=0;j++<8;)\n p=-sign(p)*(abs(abs(abs(p)-2.)-1.)-1.),\n s*=l=-2.12/max(.2,dot(p,p)),\n p=p*l-.55;\n return dot(p,a)/s;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 55.0\n// B: 2.0\n// C: 2.12\n// Offset: N/A\n\n float3 a=float3(0.5);\n float3 p_iter = p;\n p_iter.z-=A; p_iter = abs(p_iter);\n float s=B, l=0.0;\n for(int j=0;j++<8;)\n p_iter=-sign(p_iter)*(abs(abs(abs(p_iter)-2.0)-1.0)-1.0),\n s=mul(s, l=-C/max(0.2,dot(p_iter,p_iter))),\n p_iter=p_iter*l-0.55;\n return dot(p_iter,a)/s;", "A": 55.0, "B": 2.0, "C": 2.12, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "adapted from gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n vec3 a=vec3(.5);\n p.z-=55.;\n float s=2., l=0.;\n for(int j=0;j++<8;)\n p=-sign(p)*(abs(abs(abs(p)-2.)-1.)-1.),\n s*=l=-2.12/max(.2,dot(p,p)),\n p=p*l-.55;\n return dot(p,a)/s;\n }", "ConvertedCode": "// author: adapted from gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 55.0\n// B: 2.0\n// C: 2.12\n// Offset: N/A\n\n float3 a=float3(0.5);\n float3 p_iter = p;\n p_iter.z-=A;\n float s=B, l=0.0;\n for(int j=0;j++<8;)\n p_iter=-sign(p_iter)*(abs(abs(abs(p_iter)-2.0)-1.0)-1.0),\n s=mul(s, l=-C/max(0.2,dot(p_iter,p_iter))),\n p_iter=p_iter*l-0.55;\n return dot(p_iter,a)/s;", "A": 55.0, "B": 2.0, "C": 2.12, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "adapted from gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n vec3 a=vec3(.5, 0.1, 0.2);\n p.z-=55.;\n float s=2., l=0.;\n for(int j=0;j++<8;)\n p=-sign(p)*(abs(abs(abs(p)-2.)-1.)-1.),\n s*=l=-2.12/max(.2,dot(p,p)),\n p=p*l-.55;\n return dot(p,a)/s;\n }", "ConvertedCode": "// author: adapted from gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 55.0\n// B: 2.0\n// C: 2.12\n// Offset: N/A\n\n float3 a=float3(0.5, 0.1, 0.2);\n float3 p_iter = p;\n p_iter.z-=A;\n float s=B, l=0.0;\n for(int j=0;j++<8;)\n p_iter=-sign(p_iter)*(abs(abs(abs(p_iter)-2.0)-1.0)-1.0),\n s=mul(s, l=-C/max(0.2,dot(p_iter,p_iter))),\n p_iter=p_iter*l-0.55;\n return dot(p_iter,a)/s;", "A": 55.0, "B": 2.0, "C": 2.12, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n float i,g,e=1.,s=2.,l;\n vec3 a=vec3(.5);\n p.z-=55.; p=abs(p);\n for(int j=0;j++<8;)\n p=-sign(p)*(abs(abs(abs(p)-2.)-1.)-1.),\n s*=l=-1.55/max(.4,dot(p,p)),\n p=p*l-.535;\n return dot(p,a)/s;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 55.0\n// B: 1.55\n// C: 0.4\n// Offset: N/A\n\n float i,g,e=1.0,s=2.0,l;\n float3 a=float3(0.5);\n float3 p_iter = p;\n p_iter.z-=A; p_iter=abs(p_iter);\n for(int j=0;j++<8;)\n p_iter=-sign(p_iter)*(abs(abs(abs(p_iter)-2.0)-1.0)-1.0),\n s=mul(s, l=-B/max(C,dot(p_iter,p_iter))),\n p_iter=p_iter*l-0.535;\n return dot(p_iter,a)/s;", "A": 55.0, "B": 1.55, "C": 0.4, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n float i,g,e,R,S;vec3 q;\n q=p*2.;\n R=7.;\n for(int j=0;j++<9;){ \n p=-sign(p)*(abs(abs(abs(p)-2.)-1.)-1.);\n S=-9.*clamp(.7/min(dot(p,p),3.),0.,1.);\n p=p*S+q; R=R*abs(S);\n }\n return length(p)/R;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 2.0\n// B: 7.0\n// C: 9.0\n// Offset: N/A\n\n float i,g,e,R,S;float3 q;\n float3 p_iter = p;\n q=p_iter*A;\n R=B;\n for(int j=0;j++<9;){ \n p_iter=-sign(p_iter)*(abs(abs(abs(p_iter)-2.0)-1.0)-1.0);\n S=-C*clamp(0.7/min(dot(p_iter,p_iter),3.0),0.0,1.0);\n p_iter=p_iter*S+q; R=R*abs(S);\n }\n return length(p_iter)/R;", "A": 2.0, "B": 7.0, "C": 9.0, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "void rot101(inout vec3 p,vec3 a,float t){\n a=normalize(a);\n vec3 u=cross(a,p),v=cross(a,u);\n p=u*sin(t)+v*cos(t)+a*dot(a,p);\n }\n #define G dot(p,vec2(1,-1)*.707)\n #define V v=vec2(1,-1)*.707\n void sfold101(inout vec2 p){\n vec2 v=vec2(1,-1)*.707;\n float g=dot(p,v);\n p-=(G-sqrt(G*G+.01))*v;\n }\n float de(vec3 p){\n float k=.01;\n for(int i=0;i<8;i++){\n p=abs(p)-1.;\n sfold101(p.xz);\n sfold101(p.yz);\n sfold101(p.xy);\n rot101(p,vec3(1,2,2),.6);\n p*=2.;\n }\n return length(p.xy)/exp2(8.)-.01;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 0.01\n// B: 0.6\n// C: 0.01\n// Offset: N/A\n\n// NOTE: This shader uses undefined functions: rot101.\n// Conversion may be incorrect without their definitions.\n\n float k=A;\n float3 p_iter = p;\n for(int i=0;i<8;i++){\n p_iter=abs(p_iter)-1.0;\n // Inlined sfold101\n {\n float2 temp_p = p_iter.xz;\n float2 v=float2(1,-1)*0.707;\n float g=dot(temp_p,v);\n temp_p-=(dot(temp_p,float2(1,-1)*0.707)-sqrt(dot(temp_p,float2(1,-1)*0.707)*dot(temp_p,float2(1,-1)*0.707)+0.01))*v;\n p_iter.xz = temp_p;\n }\n {\n float2 temp_p = p_iter.yz;\n float2 v=float2(1,-1)*0.707;\n float g=dot(temp_p,v);\n temp_p-=(dot(temp_p,float2(1,-1)*0.707)-sqrt(dot(temp_p,float2(1,-1)*0.707)*dot(temp_p,float2(1,-1)*0.707)+0.01))*v;\n p_iter.yz = temp_p;\n }\n {\n float2 temp_p = p_iter.xy;\n float2 v=float2(1,-1)*0.707;\n float g=dot(temp_p,v);\n temp_p-=(dot(temp_p,float2(1,-1)*0.707)-sqrt(dot(temp_p,float2(1,-1)*0.707)*dot(temp_p,float2(1,-1)*0.707)+0.01))*v;\n p_iter.xy = temp_p;\n }\n\n rot101(p_iter,float3(1,2,2),B);\n p_iter=mul(p_iter, 2.0);\n }\n return length(p_iter.xy)/exp2(8.0)-C;", "A": 0.01, "B": 0.6, "C": 0.01, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n #define V vec2(.7,-.7)\n #define G(p)dot(p,V)\n float i=0.,g=0.,e=1.;\n float t = 0.34; // change to see different behavior\n for(int j=0;j++<8;){ \n p=abs(rotate3D(0.34,vec3(1,-3,5))*p*2.)-1.,\n p.xz-=(G(p.xz)-sqrt(G(p.xz)*G(p.xz)+.05))*V;\n }\n return length(p.xz)/3e2;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 0.34\n// B: 0.05\n// C: N/A\n// Offset: N/A\n\n// NOTE: This shader uses an undefined function: rotate3D.\n// You will need to provide an implementation for this to compile.\n\n float i=0.0,g=0.0,e=1.0;\n float t = A; // change to see different behavior\n float3 p_iter = p;\n for(int j=0;j++<8;){ \n p_iter=abs(mul(mul(p_iter,rotate3D(0.34,float3(1,-3,5))),2.0))-1.0,\n p_iter.xz-=(dot(p_iter.xz,float2(0.7,-0.7))-sqrt(dot(p_iter.xz,float2(0.7,-0.7))*dot(p_iter.xz,float2(0.7,-0.7))+B))*float2(0.7,-0.7);\n }\n return length(p_iter.xz)/3e2;", "A": 0.34, "B": 0.05, "C": 0.0, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "Kali", "OriginalCode": "float de(vec3 p) {\n const float width=.22;\n const float scale=4.;\n float t=0.2;\n float dotp=dot(p,p);\n p.x+=sin(t*40.)*.007;\n p=p/dotp*scale;\n p=sin(p+vec3(sin(1.+t)*2.,-t,-t*2.));\n float d=length(p.yz)-width;\n d=min(d,length(p.xz)-width);\n d=min(d,length(p.xy)-width);\n d=min(d,length(p*p*p)-width*.3);\n return d*dotp/scale;\n }", "ConvertedCode": "// author: Kali\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 0.22\n// B: 4.0\n// C: 0.2\n// Offset: N/A\n\n const float width=A;\n const float scale=B;\n float t=C;\n float3 p_iter = p;\n float dotp=dot(p_iter,p_iter);\n p_iter.x+=sin(t*40.0)*0.007;\n p_iter=p_iter/dotp*scale;\n p_iter=sin(p_iter+float3(sin(1.0+t)*2.0,-t,-t*2.0));\n float d=length(p_iter.yz)-width;\n d=min(d,length(p_iter.xz)-width);\n d=min(d,length(p_iter.xy)-width);\n d=min(d,length(p_iter*p_iter*p_iter)-width*0.3);\n return d*dotp/scale;", "A": 0.22, "B": 4.0, "C": 0.2, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "yonatan", "OriginalCode": "float de(vec3 p){\n float i,a,n,h,d=1.,t=0.3; // change t for different behavior\n vec3 q;\n n=.4;\n for(a=1.;a<2e2;n+=q.x*q.y*q.z/a)\n p.xy*=rotate2D(a+=a),\n q=cos(p*a+t);\n return n*.3;\n }", "ConvertedCode": "// author: yonatan\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 0.3\n// B: 0.4\n// C: 0.3\n// Offset: N/A\n\n float i,a,n,h,d=1.0,t=A; // change t for different behavior\n float3 q;\n float3 p_iter = p;\n n=B;\n for(a=1.0;a<2e2;n+=q.x*q.y*q.z/a)\n p_iter.xy=mul(p_iter.xy, float2x2(cos(a+=a),sin(a+=a),-sin(a+=a),cos(a+=a))),\n q=cos(p_iter*a+t);\n return n*C;", "A": 0.3, "B": 0.4, "C": 0.3, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "yonatan", "OriginalCode": "float de(vec3 p){\n vec3 z,q;\n p.z -= 9.; z=p;\n float a=1.,n=.9;\n for(int j=0;j++<15;){ \n p.xy*=rotate2D(float(j*j));\n a*=.66;\n q=sin(p*=1.5);\n n+=q.x*q.y*q.z*a;\n }\n return (n*.2-z.z*.2);\n }", "ConvertedCode": "// author: yonatan\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 9.0\n// B: 0.9\n// C: 0.66\n// Offset: N/A\n\n float3 z,q;\n float3 p_iter = p;\n p_iter.z -= A; z=p_iter;\n float a=1.0,n=B;\n for(int j=0;j++<15;){ \n p_iter.xy=mul(p_iter.xy, float2x2(cos(float(j*j)),sin(float(j*j)),-sin(float(j*j)),cos(float(j*j))));\n a=mul(a,C);\n q=sin(p_iter=mul(p_iter, 1.5));\n n+=q.x*q.y*q.z*a;\n }\n return (n*0.2-z.z*0.2);", "A": 9.0, "B": 0.9, "C": 0.66, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "yonatan", "OriginalCode": "float de(vec3 p){\n vec3 q;\n float s=1., a=1., n=.5;\n for(int j=0;j++<9;){ \n p.xy*=rotate2D(float(j*j));\n a*=.5; q=sin(p+=p);\n n+=q.x*q.y*q.z*a;\n }\n return n*.2;\n }", "ConvertedCode": "// author: yonatan\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 0.5\n// B: 0.5\n// C: 0.2\n// Offset: N/A\n\n float3 q;\n float3 p_iter = p;\n float s=1.0, a=1.0, n=A;\n for(int j=0;j++<9;){ \n p_iter.xy=mul(p_iter.xy, float2x2(cos(float(j*j)),sin(float(j*j)),-sin(float(j*j)),cos(float(j*j))));\n a=mul(a,B); q=sin(p_iter+=p_iter);\n n+=q.x*q.y*q.z*a;\n }\n return n*C;", "A": 0.5, "B": 0.5, "C": 0.2, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "yonatan", "OriginalCode": "float de(vec3 p){\n float h,d=1.,i,u,s, t = 0.8; // vary t for different behavior\n p+=vec3(1,1,sin(t/4.)*3.);\n s=2.;\n for(int j=0;j<9;j++){ \n p.xy*=rotate2D(t/4.);\n u=4./3./dot(p,p);\n s*=u;\n p=mod(1.-p*u,2.)-1.;\n }\n return (length(p)/s);\n }", "ConvertedCode": "// author: yonatan\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 0.8\n// B: 4.0\n// C: 2.0\n// Offset: N/A\n\n float h,d=1.0,i,u,s, t = A; // vary t for different behavior\n float3 p_iter = p;\n p_iter+=float3(1,1,sin(t/B)*3.0);\n s=C;\n for(int j=0;j<9;j++){ \n p_iter.xy=mul(p_iter.xy, float2x2(cos(t/4.0),sin(t/4.0),-sin(t/4.0),cos(t/4.0)));\n u=4.0/3.0/dot(p_iter,p_iter);\n s=mul(s, u);\n p_iter=fmod(1.0-p_iter*u,2.0)-1.0;\n }\n return (length(p_iter)/s);", "A": 0.8, "B": 4.0, "C": 2.0, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n float i,g,d=1.,s,h;\n vec3 e,q;\n s=2.;h=.3;\n for(int j=0;j++<8;){ \n p=abs(p)-1.; q=p;\n for(int k=0;++k<3;)\n p-=clamp(dot(q,e=vec3(9>>k&1,k>>1&1,k&1)-.5),-h,h)*e*2.;\n p*=1.4;s*=1.4;\n }\n return length(p)/(4.*s);\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 2.0\n// B: 0.3\n// C: 1.4\n// Offset: N/A\n\n float i,g,d=1.0,s,h;\n float3 e,q;\n float3 p_iter = p;\n s=A;h=B;\n for(int j=0;j++<8;){ \n p_iter=abs(p_iter)-1.0; q=p_iter;\n for(int k=0;++k<3;)\n p_iter-=clamp(dot(q,e=float3(9>>k&1,k>>1&1,k&1)-0.5),-h,h)*e*2.0;\n p_iter=mul(p_iter, C);s=mul(s, 1.4);\n }\n return length(p_iter)/(4.0*s);", "A": 2.0, "B": 0.3, "C": 1.4, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n float i,g,e=1.,s=2.,l;\n p.z-=9.; s=2.;\n p=abs(p);\n for(int j=0;j++<6;)\n p=-sign(p)*(abs(abs(abs(p)-2.)-1.)-1.),\n p*=l=-2./max(.3,sqrt(min(min(p.x,p.y),p.z))),\n p-=2., s*=l;\n return length(p)/s;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 9.0\n// B: 2.0\n// C: 2.0\n// Offset: N/A\n\n float i,g,e=1.0,s=B,l;\n float3 p_iter = p;\n p_iter.z-=A; s=C;\n p_iter=abs(p_iter);\n for(int j=0;j++<6;)\n p_iter=-sign(p_iter)*(abs(abs(abs(p_iter)-2.0)-1.0)-1.0),\n p_iter=mul(p_iter, l=-2.0/max(0.3,sqrt(min(min(p_iter.x,p_iter.y),p_iter.z)))),\n p_iter-=2.0, s=mul(s, l);\n return length(p_iter)/s;", "A": 9.0, "B": 2.0, "C": 2.0, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n float i,g,e,s;\n vec3 q=p; s=5.;\n for(int j=0;j++<6;s*=e)\n p=sign(p)*(1.7-abs(p-1.7)),\n p=p*(e=8./clamp(dot(p,p),.3,5.))+q-vec3(.8,12,.8);\n return length(p.yz)/s;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 5.0\n// B: 1.7\n// C: 1.7\n// Offset: (0.8,12,0.8)\n\n float i,g,e,s;\n float3 p_iter = p;\n float3 q=p_iter; s=A;\n for(int j=0;j++<6;s=mul(s,e))\n p_iter=sign(p_iter)*(B-abs(p_iter-C)),\n p_iter=p_iter*(e=8.0/clamp(dot(p_iter,p_iter),0.3,5.0))+q-Offset;\n return length(p_iter.yz)/s;", "A": 5.0, "B": 1.7, "C": 1.7, "OffsetX": 0.8, "OffsetY": 12.0, "OffsetZ": 0.8 }, { "Author": "adapted from code by catzpaw", "OriginalCode": "float de(vec3 p){ \n float k = M_PI*2.;\n vec3 v = vec3(0.,3.,fract(k));\n return (length(cross(p=cos(p+v),p.zxy))-0.1)*0.4;\n }", "ConvertedCode": "// author: adapted from code by catzpaw\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 3.14159265\n// B: 2.0\n// C: 0.1\n// Offset: N/A\n\n float k = A*B;\n float3 v = float3(0.0,3.0,frac(k));\n return (length(cross(p=cos(p+v),p.zxy))-C)*0.4;", "A": 3.14159265, "B": 2.0, "C": 0.1, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "adapted from code by catzpaw", "OriginalCode": "float de(vec3 p){ \n float k = M_PI*2.;\n vec3 v = vec3(0.,3.,fract(k));\n return (length(cross(cos(p+v),p.zxy))-0.4)*0.2;\n }", "ConvertedCode": "// author: adapted from code by catzpaw\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 3.14159265\n// B: 2.0\n// C: 0.4\n// Offset: N/A\n\n float k = A*B;\n float3 v = float3(0.0,3.0,frac(k));\n return (length(cross(cos(p+v),p.zxy))-C)*0.2;", "A": 3.14159265, "B": 2.0, "C": 0.4, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "catzpaw", "OriginalCode": "float de(vec3 p){ (distance bound doesn't hold)\n vec3 v=vec3(0,1.5,6.3);\n return min(6.-length((p-v).xy+sin(p.yx)),\n dot(cos(p),sin(p.yzx)))+sin(sin(p.z*3.5)+v.z)*.1+1.;\n }", "ConvertedCode": "// author: catzpaw\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 1.5\n// B: 6.3\n// C: 6.0\n// Offset: N/A\n\n float3 v=float3(0,A,B);\n return min(C-length((p-v).xy+sin(p.yx)),\n dot(cos(p),sin(p.yzx)))+sin(sin(p.z*3.5)+v.z)*0.1+1.0;", "A": 1.5, "B": 6.3, "C": 6.0, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n p.z-=80.; p=abs(p);\n float s=3., l=0.;\n for(int j=0;j++<8;)\n p=-sign(p)*(abs(abs(abs(p)-2.)-1.)-1.),\n p*=l=-.8/min(2.,length(p)),\n p-=.5, s*=l;\n return (length(p)/s)-0.1;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 80.0\n// B: 3.0\n// C: 0.8\n// Offset: N/A\n\n float3 p_iter = p;\n p_iter.z-=A; p_iter=abs(p_iter);\n float s=B, l=0.0;\n for(int j=0;j++<8;)\n p_iter=-sign(p_iter)*(abs(abs(abs(p_iter)-2.0)-1.0)-1.0),\n p_iter=mul(p_iter, l=-C/min(2.0,length(p_iter))),\n p_iter-=0.5, s=mul(s, l);\n return (length(p_iter)/s)-0.1;", "A": 80.0, "B": 3.0, "C": 0.8, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n float s = 1.;\n for(int j=0;j<7;j++)\n p=mod(p-1.,2.)-1.,\n p*=1.2, s*=1.2,\n p=abs(abs(p)-1.)-1.;\n return (length(cross(p,normalize(vec3(2,2.03,1))))/s)-0.02;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 1.2\n// B: 1.2\n// C: 0.02\n// Offset: N/A\n\n float s = 1.0;\n float3 p_iter = p;\n for(int j=0;j<7;j++)\n p_iter=fmod(p_iter-1.0,2.0)-1.0,\n p_iter=mul(p_iter, A), s=mul(s, B),\n p_iter=abs(abs(p_iter)-1.0)-1.0;\n return (length(cross(p_iter,normalize(float3(2,2.03,1))))/s)-C;", "A": 1.2, "B": 1.2, "C": 0.02, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n float s=2., l=0.;\n p=abs(p);\n for(int j=0;j++<8;)\n p=1.-abs(abs(p-2.)-1.),\n p*=l=1.2/dot(p,p), s*=l;\n return dot(p,normalize(vec3(3,-2,-1)))/s;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 2.0\n// B: 1.2\n// C: N/A\n// Offset: N/A\n\n float s=A, l=0.0;\n float3 p_iter=abs(p);\n for(int j=0;j++<8;)\n p_iter=1.0-abs(abs(p_iter-2.0)-1.0),\n p_iter=mul(p_iter, l=B/dot(p_iter,p_iter)), s=mul(s, l);\n return dot(p_iter,normalize(float3(3,-2,-1)))/s;", "A": 2.0, "B": 1.2, "C": 0.0, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n float s=2., l=0.;\n p=abs(p);\n for(int j=0;j++<8;)\n p=-sign(p)*(abs(abs(abs(p)-2.)-1.)-1.),\n p*=l=-1.3/dot(p,p),\n p-=.15, s*=l;\n return length(p)/s;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 2.0\n// B: 1.3\n// C: 0.15\n// Offset: N/A\n\n float s=A, l=0.0;\n float3 p_iter=abs(p);\n for(int j=0;j++<8;)\n p_iter=-sign(p_iter)*(abs(abs(abs(p_iter)-2.0)-1.0)-1.0),\n p_iter=mul(p_iter, l=-B/dot(p_iter,p_iter)),\n p_iter-=C, s=mul(s, l);\n return length(p_iter)/s;", "A": 2.0, "B": 1.3, "C": 0.15, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n p.z-=20;\n float s=3., l=0.;\n p=abs(p);\n for(int j=0;j++<10;)\n p=-sign(p)*(abs(abs(abs(p)-2.)-1.)-1.),\n p*=l=-1./max(.19,dot(p,p)),\n p-=.24, s*=l;\n return (length(p)/s);\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 20.0\n// B: 3.0\n// C: 0.19\n// Offset: N/A\n\n float3 p_iter = p;\n p_iter.z-=A;\n float s=B, l=0.0;\n p_iter=abs(p_iter);\n for(int j=0;j++<10;)\n p_iter=-sign(p_iter)*(abs(abs(abs(p_iter)-2.0)-1.0)-1.0),\n p_iter=mul(p_iter, l=-1.0/max(C,dot(p_iter,p_iter))),\n p_iter-=0.24, s=mul(s, l);\n return (length(p_iter)/s);", "A": 20.0, "B": 3.0, "C": 0.19, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n float s=2., l=0.;\n p=abs(mod(p-1.,2.)-1.);\n for(int j=0;j++<8;)\n p=1.-abs(abs(abs(p-5.)-2.)-2.),\n p*=l=-1.3/dot(p,p),\n p-=vec3(.3,.3,.4), s*=l;\n return length(p.yz)/s;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 2.0\n// B: 1.3\n// C: N/A\n// Offset: (0.3,0.3,0.4)\n\n float s=A, l=0.0;\n float3 p_iter =abs(fmod(p-1.0,2.0)-1.0);\n for(int j=0;j++<8;)\n p_iter=1.0-abs(abs(abs(p_iter-5.0)-2.0)-2.0),\n p_iter=mul(p_iter, l=-B/dot(p_iter,p_iter)),\n p_iter-=Offset, s=mul(s, l);\n return length(p_iter.yz)/s;", "A": 2.0, "B": 1.3, "C": 0.0, "OffsetX": 0.3, "OffsetY": 0.3, "OffsetZ": 0.4 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n float i,g,e,R,S;\n vec3 q=p*8.; R=8.;\n for(int j=0;j++<6;)\n p=-sign(p)*(abs(abs(abs(p)-2.)-1.)-1.),\n S=-5.*clamp(1.5/dot(p,p),.8,5.),\n p=p*S+q, R*=S;\n return length(p)/R;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 8.0\n// B: 8.0\n// C: 5.0\n// Offset: N/A\n\n float i,g,e,R,S;\n float3 p_iter = p;\n float3 q=p_iter*A; R=B;\n for(int j=0;j++<6;)\n p_iter=-sign(p_iter)*(abs(abs(abs(p_iter)-2.0)-1.0)-1.0),\n S=-C*clamp(1.5/dot(p_iter,p_iter),0.8,5.0),\n p_iter=p_iter*S+q, R=mul(R,S);\n return length(p_iter)/R;", "A": 8.0, "B": 8.0, "C": 5.0, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n float i,g,e,s=2.,k;\n vec3 q;\n p=vec3(length(p.xy)-PI,atan(p.y,p.x)*PI,p.z);\n p.yz=mod(p.yz,4.)-2.;\n p=abs(p); q=p;\n for(int j=0;++j<5;)\n p=1.-abs(p-1.),\n p=-p*(k=max(3./dot(p,p),3.))+q, s*=k;\n return length(p.xz)/s;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 2.0\n// B: 3.14159265\n// C: 3.14159265\n// Offset: N/A\n\n float i,g,e,s=A,k;\n float3 q;\n float3 p_iter=float3(length(p.xy)-B,atan2(p.y,p.x)*C,p.z);\n p_iter.yz=fmod(p_iter.yz,4.0)-2.0;\n p_iter=abs(p_iter); q=p_iter;\n for(int j=0;++j<5;)\n p_iter=1.0-abs(p_iter-1.0),\n p_iter=-p_iter*(k=max(3.0/dot(p_iter,p_iter),3.0))+q, s=mul(s, k);\n return length(p_iter.xz)/s;", "A": 2.0, "B": 3.14159265, "C": 3.14159265, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n float i,g,e,R=2.,S;\n for(int j=0;j++<9;)\n p=1.-abs(p-1.),\n p*=S=(j%3>1)?1.3:1.2/dot(p,p),\n R*=S;\n return length(cross(p,vec3(.5)))/R-5e-3;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 2.0\n// B: 1.3\n// C: 1.2\n// Offset: N/A\n\n float i,g,e,R=A,S;\n float3 p_iter = p;\n for(int j=0;j++<9;)\n p_iter=1.0-abs(p_iter-1.0),\n p_iter=mul(p_iter, S=(j%3>1)?B:C/dot(p_iter,p_iter)),\n R=mul(R,S);\n return length(cross(p_iter,float3(0.5)))/R-5e-3;", "A": 2.0, "B": 1.3, "C": 1.2, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n float s=2.,r2;\n p=abs(p);\n for(int i=0; i<12;i++){\n p=1.-abs(p-1.);\n r2=(i%3==1)?1.1:1.2/dot(p,p);\n p*=r2; s*=r2;\n }\n return length(cross(p,normalize(vec3(1))))/s-0.005;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 2.0\n// B: 1.1\n// C: 1.2\n// Offset: N/A\n\n float s=A,r2;\n float3 p_iter=abs(p);\n for(int i=0; i<12;i++){\n p_iter=1.0-abs(p_iter-1.0);\n r2=(i%3==1)?B:C/dot(p_iter,p_iter);\n p_iter=mul(p_iter, r2); s=mul(s, r2);\n }\n return length(cross(p_iter,normalize(float3(1))))/s-0.005;", "A": 2.0, "B": 1.1, "C": 1.2, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n float i,g,e,s=3.,l;\n vec3 q=p;\n for(int j=0;j++<9;)\n p=mod(p-1.,2.)-1.,\n l=1.2/pow(pow(dot(pow(abs(p),vec3(5)),vec3(1)),.2),1.6),\n p*=l, s*=l;\n return abs(p.y)/s;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 3.0\n// B: 1.2\n// C: 0.2\n// Offset: N/A\n\n float i,g,e,s=A,l;\n float3 p_iter = p;\n float3 q=p_iter;\n for(int j=0;j++<9;)\n p_iter=fmod(p_iter-1.0,2.0)-1.0,\n l=B/pow(pow(dot(pow(abs(p_iter),float3(5)),float3(1)),C),1.6),\n p_iter=mul(p_iter,l), s=mul(s, l);\n return abs(p_iter.y)/s;", "A": 3.0, "B": 1.2, "C": 0.2, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n float i,g,e,s=4.,l;\n vec3 q=p;\n for(int j=0;j++<9;)\n p=mod(p-1.,2.)-1.,\n l=1.2/dot(p,p),\n p*=l, s*=l;\n return abs(p.y)/s;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 4.0\n// B: 1.2\n// C: N/A\n// Offset: N/A\n\n float i,g,e,s=A,l;\n float3 p_iter = p;\n float3 q=p_iter;\n for(int j=0;j++<9;)\n p_iter=fmod(p_iter-1.0,2.0)-1.0,\n l=B/dot(p_iter,p_iter),\n p_iter=mul(p_iter,l), s=mul(s, l);\n return abs(p_iter.y)/s;", "A": 4.0, "B": 1.2, "C": 0.0, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n float i,g,e,s=1.,l;\n vec3 q=p;\n for(int j=0;j++<4;)\n p=mod(p-1.,2.)-1.,\n l=2./dot(p,p),\n p*=l, s*=l;\n return length(p.xy)/s;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 2.0\n// B: N/A\n// C: N/A\n// Offset: N/A\n\n float i,g,e,s=1.0,l;\n float3 p_iter = p;\n float3 q=p_iter;\n for(int j=0;j++<4;)\n p_iter=fmod(p_iter-1.0,2.0)-1.0,\n l=A/dot(p_iter,p_iter),\n p_iter=mul(p_iter,l), s=mul(s, l);\n return length(p_iter.xy)/s;", "A": 2.0, "B": 0.0, "C": 0.0, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n #define F1(s)p.s=abs(p.s)-1.\n p+=vec3(0,3.8,5.);\n vec3 q=p;\n p=mod(p,vec3(8,8,2))-vec3(4,4,1);\n F1(yx); F1(yx); F1(xz);\n return min(length(cross(p,vec3(.5)))-.03,length(p.xy)-.05);\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 3.8\n// B: 5.0\n// C: 0.03\n// Offset: N/A\n\n float3 p_iter = p;\n p_iter+=float3(0,A,B);\n float3 q=p_iter;\n p_iter=fmod(p_iter,float3(8,8,2))-float3(4,4,1);\n p_iter.yx=abs(p_iter.yx)-1.0; p_iter.yx=abs(p_iter.yx)-1.0; p_iter.xz=abs(p_iter.xz)-1.0;\n return min(length(cross(p_iter,float3(0.5)))-C,length(p_iter.xy)-0.05);", "A": 3.8, "B": 5.0, "C": 0.03, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n float l,s=3.;\n float t = 4.5;\n for(int j=0;j++<5;p.xy=fract(p.xy+p.x)-.5)\n p=vec3(log(l=length(p.xy)),atan(p.y,p.x)/PI*2.,p.z/l+1.),\n s*=.5*l;\n return abs(p.z)*s;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 3.0\n// B: 4.5\n// C: 2.0\n// Offset: N/A\n\n float l,s=A;\n float t = B;\n float3 p_iter = p;\n for(int j=0;j++<5;p_iter.xy=frac(p_iter.xy+p_iter.x)-0.5)\n p_iter=float3(log(l=length(p_iter.xy)),atan2(p_iter.y,p_iter.x)/3.14159265*C,p_iter.z/l+1.0),\n s=mul(s, 0.5*l);\n return abs(p_iter.z)*s;", "A": 3.0, "B": 4.5, "C": 2.0, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n float i,g,e,R,S;\n vec3 q=p; R=2.;\n for(int j=0;j++<9;)\n p-=clamp(p,-1.,1.)*2.,\n S=9.*clamp(.7/min(dot(p,p),3.),0.,1.),\n p=p*S+q,\n R=R*abs(S)+1.,\n p=p.yzx;\n return length(p)/R;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 2.0\n// B: 9.0\n// C: 0.7\n// Offset: N/A\n\n float i,g,e,R,S;\n float3 p_iter = p;\n float3 q=p_iter; R=A;\n for(int j=0;j++<9;)\n p_iter-=clamp(p_iter,-1.0,1.0)*2.0,\n S=B*clamp(C/min(dot(p_iter,p_iter),3.0),0.0,1.0),\n p_iter=p_iter*S+q,\n R=R*abs(S)+1.0,\n p_iter=p_iter.yzx;\n return length(p_iter)/R;", "A": 2.0, "B": 9.0, "C": 0.7, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n float i,g,e,R=1.,S;\n vec3 q=p;\n for(int j=0;j++<9;)\n p-=clamp(p,-1.,1.)*2.,\n S=6.*clamp(.2/min(dot(p,p),7.),0.,1.),\n p=p*S+q*.7, R=R*abs(S)+.7;\n return length(p)/R;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 6.0\n// B: 0.2\n// C: 0.7\n// Offset: N/A\n\n float i,g,e,R=1.0,S;\n float3 p_iter = p;\n float3 q=p_iter;\n for(int j=0;j++<9;)\n p_iter-=clamp(p_iter,-1.0,1.0)*2.0,\n S=A*clamp(B/min(dot(p_iter,p_iter),7.0),0.0,1.0),\n p_iter=p_iter*S+q*C, R=R*abs(S)+0.7;\n return length(p_iter)/R;", "A": 6.0, "B": 0.2, "C": 0.7, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n float i,g,e,R,S;\n vec3 q;\n p.z-=3.;\n q=p; R=1.;\n for(int j=0;j++<9;)\n p-=clamp(p,-.9,.9)*2.,\n S=9.*clamp(.1/min(dot(p,p),1.),0.,1.),\n p=p*S+q, R=R*S+1.;\n return .7*length(p)/R;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 3.0\n// B: 9.0\n// C: 0.1\n// Offset: N/A\n\n float i,g,e,R,S;\n float3 q;\n float3 p_iter = p;\n p_iter.z-=A;\n q=p_iter; R=1.0;\n for(int j=0;j++<9;)\n p_iter-=clamp(p_iter,-0.9,0.9)*2.0,\n S=B*clamp(C/min(dot(p_iter,p_iter),1.0),0.0,1.0),\n p_iter=p_iter*S+q, R=R*S+1.0;\n return 0.7*length(p_iter)/R;", "A": 3.0, "B": 9.0, "C": 0.1, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n float i,g,e,R,S;\n vec3 q;\n p.z-=4.;\n q=p; R=1.;\n for(int j=0;j++<9;)\n p-=clamp(p,-1.,1.)*2.,\n S=9.*clamp(.3/min(dot(p,p),1.),0.,1.),\n p=p*S+q*.5,\n R=R*abs(S)+.5;\n return .6*length(p)/R-1e-3;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 4.0\n// B: 9.0\n// C: 0.3\n// Offset: N/A\n\n float i,g,e,R,S;\n float3 q;\n float3 p_iter = p;\n p_iter.z-=A;\n q=p_iter; R=1.0;\n for(int j=0;j++<9;)\n p_iter-=clamp(p_iter,-1.0,1.0)*2.0,\n S=B*clamp(C/min(dot(p_iter,p_iter),1.0),0.0,1.0),\n p_iter=p_iter*S+q*0.5,\n R=R*abs(S)+0.5;\n return 0.6*length(p_iter)/R-1e-3;", "A": 4.0, "B": 9.0, "C": 0.3, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "takusakuw", "OriginalCode": "float de(vec3 p){\n return length(sin(p)+cos(p*.5))-.4;\n }", "ConvertedCode": "// author: takusakuw\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 0.5\n// B: 0.4\n// C: N/A\n// Offset: N/A\n\n return length(sin(p)+cos(p*A))-B;", "A": 0.5, "B": 0.4, "C": 0.0, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "yosshin", "OriginalCode": "float de(vec3 p){\n return min(.65-length(fract(p+.5)-.5),p.y+.2);\n }", "ConvertedCode": "// author: yosshin\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 0.65\n// B: 0.5\n// C: 0.5\n// Offset: N/A\n\n return min(A-length(frac(p+B)-C),p.y+0.2);", "A": 0.65, "B": 0.5, "C": 0.5, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "takusakuw", "OriginalCode": "float de(vec3 p){\n return (length(sin(p.zxy)-cos(p.zzx))-.5);\n }", "ConvertedCode": "// author: takusakuw\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 0.5\n// B: N/A\n// C: N/A\n// Offset: N/A\n\n return (length(sin(p.zxy)-cos(p.zzx))-A);", "A": 0.5, "B": 0.0, "C": 0.0, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "yuruyurau", "OriginalCode": "float de(vec3 p){\n #define b(p)length(max(abs(mod(p,.8)-.4)-.05,0.))\n vec3 l;\n p=cos(p)-vec3(.3), p.yx*=mat2(cos(.8+vec4(0,3,5,0)));\n return min(min(b(p.xy),b(p.xz)),b(p.yz));\n }", "ConvertedCode": "// author: yuruyurau\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 0.3\n// B: 0.8\n// C: N/A\n// Offset: N/A\n\n float3 l;\n float3 p_iter=cos(p)-float3(A); p_iter.yx=mul(p_iter.yx, float2x2(cos(B+float4(0,3,5,0))));\n return min(min((length(max(abs(fmod(p_iter.xy,0.8)-0.4)-0.05,0.0))),(length(max(abs(fmod(p_iter.xz,0.8)-0.4)-0.05,0.0)))),(length(max(abs(fmod(p_iter.yz,0.8)-0.4)-0.05,0.0))));", "A": 0.3, "B": 0.8, "C": 0.0, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n #define F1(a,n)a=abs(a)-n,a=vec2(a.x*.5+a.y,a.x-a.y*.5)\n p=fract(p)-.5;\n for(int j=0;j++<8;)\n F1(p.zy,.0),\n F1(p.xz,.55);\n return .4*length(p.yz)-2e-3;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 0.5\n// B: 0.55\n// C: 0.4\n// Offset: N/A\n\n float3 p_iter =frac(p)-A;\n for(int j=0;j++<8;)\n p_iter.zy=abs(p_iter.zy)-0.0,p_iter.zy=float2(p_iter.zy.x*0.5+p_iter.zy.y,p_iter.zy.x-p_iter.zy.y*0.5),\n p_iter.xz=abs(p_iter.xz)-B,p_iter.xz=float2(p_iter.xz.x*0.5+p_iter.xz.y,p_iter.xz.x-p_iter.xz.y*0.5);\n return C*length(p_iter.yz)-2e-3;", "A": 0.5, "B": 0.55, "C": 0.4, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n #define M(a)mat2(cos(a+vec4(0,2,5,0)))\n #define F1(a)for(int j=0;j<5;j++)p.a=abs(p.a*M(3.));(p.a).y-=3.\n float t = 0.96;\n p.z-=9.;\n p.xz*=M(t);\n F1(xy);\n F1(zy);\n return dot(abs(p),vec3(.3))-.5;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 0.96\n// B: 9.0\n// C: 0.3\n// Offset: N/A\n\n float t = A;\n float3 p_iter = p;\n p_iter.z-=B;\n p_iter.xz=mul(p_iter.xz, (float2x2(cos(t+float4(0,2,5,0)))));\n for(int j=0;j<5;j++)p_iter.xy=abs(mul(p_iter.xy,(float2x2(cos(3.0+float4(0,2,5,0)))));(p_iter.xy).y-=3.0;\n for(int j=0;j<5;j++)p_iter.zy=abs(mul(p_iter.zy,(float2x2(cos(3.0+float4(0,2,5,0)))));(p_iter.zy).y-=3.0;\n return dot(abs(p_iter),float3(C))-0.5;", "A": 0.96, "B": 9.0, "C": 0.3, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "adapted from code by alia", "OriginalCode": "float de(vec3 p){ \n vec3 q=fract(p)-.5;\n float f=-length(p.xy)+2., g=length(q)-.6;\n return max(f,-g);\n }", "ConvertedCode": "// author: adapted from code by alia\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 0.5\n// B: 0.6\n// C: N/A\n// Offset: N/A\n\n float3 q=frac(p)-A;\n float f=-length(p.xy)+2.0, g=length(q)-B;\n return max(f,-g);", "A": 0.5, "B": 0.6, "C": 0.0, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "adapted from code by wrighter", "OriginalCode": "float de(vec3 p){ // has aliasing issues\n vec3 a = sin(p/dot(p,p)*4);\n return 0.95*min(length(a.yx),length(a.yz))-0.52+0.2;\n }", "ConvertedCode": "// author: adapted from code by wrighter\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 0.95\n// B: 0.52\n// C: 0.2\n// Offset: N/A\n\n float3 a = sin(p/dot(p,p)*4);\n return A*min(length(a.yx),length(a.yz))-B+C;", "A": 0.95, "B": 0.52, "C": 0.2, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "phi16", "OriginalCode": "float de(vec3 p){\n return length(.05*cos(9.*p.y*p.x)+cos(p)-.1*cos(9.*(p.z+.3*p.x-p.y)))-1.;\n }", "ConvertedCode": "// author: phi16\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 0.05\n// B: 9.0\n// C: 0.1\n// Offset: N/A\n\n return length(A*cos(B*p.y*p.x)+cos(p)-C*cos(9.0*(p.z+0.3*p.x-p.y)))-1.0;", "A": 0.05, "B": 9.0, "C": 0.1, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n vec3 q=p;\n float s=5., e=0.;\n for(int j=0;j++<8;s*=e)\n p=sign(p)*(1.-abs(abs(p-2.)-1.)),\n p=p*(e=6./clamp(dot(p,p),.1,3.))-q*vec3(2,8,5);\n return length(p)/s;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 5.0\n// B: 6.0\n// C: 0.1\n// Offset: N/A\n\n float3 q=p;\n float s=A, e=0.0;\n float3 p_iter = p;\n for(int j=0;j++<8;s=mul(s,e))\n p_iter=sign(p_iter)*(1.0-abs(abs(p_iter-2.0)-1.0)),\n p_iter=p_iter*(e=B/clamp(dot(p_iter,p_iter),C,3.0))-q*float3(2,8,5);\n return length(p_iter)/s;", "A": 5.0, "B": 6.0, "C": 0.1, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n float e=2., s=0., z=0.;\n for(int j=0;++j<6;p=abs(p)-1.5,e/=s=min(dot(p,p),.75),p/=s);\n z+=length(p.xz)/e;\n return z;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 2.0\n// B: 1.5\n// C: 0.75\n// Offset: N/A\n\n float e=A, s=0.0, z=0.0;\n float3 p_iter = p;\n for(int j=0;++j<6;p_iter=abs(p_iter)-B,e/=s=min(dot(p_iter,p_iter),C),p_iter/=s);\n z+=length(p_iter.xz)/e;\n return z;", "A": 2.0, "B": 1.5, "C": 0.75, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "yonatan", "OriginalCode": "float de(vec3 p){\n float i,j,e,g,h,s;\n p.y-=p.z*.5;\n for(j=s=h=.01;j++<9.;s+=s)\n p.xz*=rotate2D(2.),\n h+=abs(sin(p.x*s)*sin(p.z*s))/s;\n return max(0.,p.y+h);\n }", "ConvertedCode": "// author: yonatan\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 0.5\n// B: 0.01\n// C: 0.01\n// Offset: N/A\n\n float i,j,e,g,h,s;\n float3 p_iter = p;\n p_iter.y-=p_iter.z*A;\n for(j=s=h=B;j++<9.0;s+=s)\n p_iter.xz=mul(p_iter.xz, float2x2(cos(2.0),sin(2.0),-sin(2.0),cos(2.0))),\n h+=abs(sin(p_iter.x*s)*sin(p_iter.z*s))/s;\n return max(0.0,p_iter.y+h);", "A": 0.5, "B": 0.01, "C": 0.01, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "yonatan", "OriginalCode": "float de(vec3 p){\n float i,g,e,s,q;\n q=length(p)-1.;\n p.y++;\n s=3.;\n for(int i=0;i++<7;p=vec3(0,5,0)-abs(abs(p)*e-3.))\n s*=e=max(1.,14./dot(p,p));\n return max(q,min(1.,length(p.xz)-.3))/s;\n }", "ConvertedCode": "// author: yonatan\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 3.0\n// B: 14.0\n// C: 0.3\n// Offset: N/A\n\n float i,g,e,s,q;\n float3 p_iter = p;\n q=length(p_iter)-1.0;\n p_iter.y++;\n s=A;\n for(int i=0;i++<7;p_iter=float3(0,5,0)-abs(abs(p_iter)*e-3.0))\n s=mul(s, e=max(1.0,B/dot(p_iter,p_iter)));\n return max(q,min(1.0,length(p_iter.xz)-C))/s;", "A": 3.0, "B": 14.0, "C": 0.3, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n float s=2., e=0.;\n for(int i=0;i++<8;p=abs(p)*e)\n p=vec3(.8,2,1)-abs(p-vec3(1,2,1)),\n s*=e=1.3/clamp(dot(p,p),.1,1.2);\n return min(length(p.xz),p.y)/s+.001;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 2.0\n// B: 1.3\n// C: 0.1\n// Offset: (1,2,1)\n\n float s=A, e=0.0;\n float3 p_iter = p;\n for(int i=0;i++<8;p_iter=mul(abs(p_iter),e))\n p_iter=float3(0.8,2,1)-abs(p_iter-Offset),\n s=mul(s, e=B/clamp(dot(p_iter,p_iter),C,1.2));\n return min(length(p_iter.xz),p_iter.y)/s+0.001;", "A": 2.0, "B": 1.3, "C": 0.1, "OffsetX": 1.0, "OffsetY": 2.0, "OffsetZ": 1.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n float i,g=.3,e,s=2.,q;\n for(int i=0;i++<7;p=vec3(2,5,1)-abs(abs(abs(p)*e-3.)-vec3(2,5,1)))\n s*=e=12./min(dot(p,p),12.);\n return min(1.,length(p.xz)-.2)/s;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 0.3\n// B: 2.0\n// C: 12.0\n// Offset: N/A\n\n float i,g=A,e,s=B,q;\n float3 p_iter = p;\n for(int i=0;i++<7;p_iter=float3(2,5,1)-abs(abs(abs(p_iter)*e-3.0)-float3(2,5,1)))\n s=mul(s, e=C/min(dot(p_iter,p_iter),12.0));\n return min(1.0,length(p_iter.xz)-0.2)/s;", "A": 0.3, "B": 2.0, "C": 12.0, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "kamoshika", "OriginalCode": "float de(vec3 p){\n vec3 Q;\n float i,d=1.,a,b=sqrt(3.);\n Q=mod(p,b*2.)-b;\n a=1.; d=9.;\n for(int j=0;j++<7;){ \n Q=abs(Q);\n d=min(d,(dot(Q,vec3(1)/b)-1.)/a);\n Q=Q*3.-6./b;a*=3.;\n }\n return d;\n }", "ConvertedCode": "// author: kamoshika\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 3.0\n// B: 9.0\n// C: 3.0\n// Offset: N/A\n\n float3 Q;\n float i,d=1.0,a,b=sqrt(A);\n Q=fmod(p,b*2.0)-b;\n a=1.0; d=B;\n for(int j=0;j++<7;){ \n Q=abs(Q);\n d=min(d,(dot(Q,float3(1)/b)-1.0)/a);\n Q=Q*3.0-6.0/b;a=mul(a,C);\n }\n return d;", "A": 3.0, "B": 9.0, "C": 3.0, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "kamoshika", "OriginalCode": "float de(vec3 p){\n float i,d=1.,b=1.73;\n vec3 Q=mod(p,b*2.)-b;\n for(int j=0;j++<6;){ \n Q=abs(Q);\n if(Q.y>Q.x)Q.xy=Q.yx;\n if(Q.z>Q.x)Q.zx=Q.xz;\n Q*=2.;\n Q.x-=b;\n }\n return (dot(abs(Q),vec3(1)/b)-1.)/64.;\n }", "ConvertedCode": "// author: kamoshika\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 1.73\n// B: 64.0\n// C: N/A\n// Offset: N/A\n\n float i,d=1.0,b=A;\n float3 Q=fmod(p,b*2.0)-b;\n for(int j=0;j++<6;){ \n Q=abs(Q);\n if(Q.y>Q.x)Q.xy=Q.yx;\n if(Q.z>Q.x)Q.zx=Q.xz;\n Q=mul(Q, 2.0);\n Q.x-=b;\n }\n return (dot(abs(Q),float3(1)/b)-1.0)/B;", "A": 1.73, "B": 64.0, "C": 0.0, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "yonatan", "OriginalCode": "float de(vec3 p){ \n return (length(vec2((length(vec2(length(p.xy)-1.3,\n length(p.zy)-1.3))-.5), dot(cos(p*12.),sin(p.zxy*12.))*.1))-.02)*.3;\n }", "ConvertedCode": "// author: yonatan\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 1.3\n// B: 1.3\n// C: 0.5\n// Offset: N/A\n\n return (length(float2((length(float2(length(p.xy)-A,\n length(p.zy)-B))-C), dot(cos(p*12.0),sin(p.zxy*12.0))*0.1))-0.02)*0.3;", "A": 1.3, "B": 1.3, "C": 0.5, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n p.yz*=rotate2D(-.3);\n float ss=3., s=1.;\n for(int j=0; j++<7;){ \n p=abs(p); p.y-=.5;\n s = 1./clamp(dot(p,p),.0,1.);\n p*=s; ss*=s;\n p-=vec2(1,.1).xxy;\n p.xyz=p.zxy;\n }\n return length(p.xy)/ss-.01;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 0.3\n// B: 3.0\n// C: 0.5\n// Offset: N/A\n\n float3 p_iter = p;\n p_iter.yz=mul(p_iter.yz, float2x2(cos(-A),sin(-A),-sin(-A),cos(-A)));\n float ss=B, s=1.0;\n for(int j=0; j++<7;){ \n p_iter=abs(p_iter); p_iter.y-=C;\n s = 1.0/clamp(dot(p_iter,p_iter),0.0,1.0);\n p_iter=mul(p_iter, s); ss=mul(ss, s);\n p_iter-=float2(1,0.1).xxy;\n p_iter.xyz=p_iter.zxy;\n }\n return length(p_iter.xy)/ss-0.01;", "A": 0.3, "B": 3.0, "C": 0.5, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n p.yz*=rotate2D(-.3);\n float ss=3., s=1.;\n for(int j=0; j++<7;){ \n p=abs(p); p.y-=.5;\n s = 1./clamp(dot(p,p),.0,1.);\n p*=s; ss*=s;\n p-=vec2(1,.1).xxy;\n p.xyz=p.zxy;\n }\n return length(max(abs(p)-.6,0.))/ss-.01;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 0.3\n// B: 3.0\n// C: 0.5\n// Offset: N/A\n\n float3 p_iter = p;\n p_iter.yz=mul(p_iter.yz, float2x2(cos(-A),sin(-A),-sin(-A),cos(-A)));\n float ss=B, s=1.0;\n for(int j=0; j++<7;){ \n p_iter=abs(p_iter); p_iter.y-=C;\n s = 1.0/clamp(dot(p_iter,p_iter),0.0,1.0);\n p_iter=mul(p_iter, s); ss=mul(ss, s);\n p_iter-=float2(1,0.1).xxy;\n p_iter.xyz=p_iter.zxy;\n }\n return length(max(abs(p_iter)-0.6,0.0))/ss-0.01;", "A": 0.3, "B": 3.0, "C": 0.5, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n float s=2., e;\n for(int j=0;j++<8;){ \n p=.1-abs(p-.2);\n p.x < p.z?p=p.zyx:p;\n s*=e=1.6;\n p=abs(p)*e-vec3(.1,3,1);\n p.yz*=rotate2D(.8);\n }\n return length(p.yx)/s-.04;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 2.0\n// B: 0.1\n// C: 0.2\n// Offset: (0.1,3,1)\n\n float s=A, e;\n float3 p_iter = p;\n for(int j=0;j++<8;){ \n p_iter=B-abs(p_iter-C);\n p_iter.x < p_iter.z?p_iter=p_iter.zyx:p_iter;\n s=mul(s, e=1.6);\n p_iter=mul(abs(p_iter),e)-Offset;\n p_iter.yz=mul(p_iter.yz, float2x2(cos(0.8),sin(0.8),-sin(0.8),cos(0.8)));\n }\n return length(p_iter.yx)/s-0.04;", "A": 2.0, "B": 0.1, "C": 0.2, "OffsetX": 0.1, "OffsetY": 3.0, "OffsetZ": 1.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n float s=2., e;\n for(int i=0;i++<8;){ \n p=.5-abs(p);\n p.x < p.z?p=p.zyx:p;\n p.z < p.y?p=p.xzy:p;\n s*=e=1.6;\n p=abs(p)*e-vec3(.5,30,5);\n p.yz*=rotate2D(.3);\n }\n return length(p.xy)/s-.005;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 2.0\n// B: 1.6\n// C: 0.5\n// Offset: (0.5,30,5)\n\n float s=A, e;\n float3 p_iter = p;\n for(int i=0;i++<8;){ \n p_iter=C-abs(p_iter);\n p_iter.x < p_iter.z?p_iter=p_iter.zyx:p_iter;\n p_iter.z < p_iter.y?p_iter=p_iter.xzy:p_iter;\n s=mul(s, e=B);\n p_iter=mul(abs(p_iter),e)-Offset;\n p_iter.yz=mul(p_iter.yz, float2x2(cos(0.3),sin(0.3),-sin(0.3),cos(0.3)));\n }\n return length(p_iter.xy)/s-0.005;", "A": 2.0, "B": 1.6, "C": 0.5, "OffsetX": 0.5, "OffsetY": 30.0, "OffsetZ": 5.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n float s=3.,e;\n for(int i=0;i++<3;p=vec3(2,4,2)-abs(abs(p)*e-vec3(3,6,1)))\n s*=e=1./min(dot(p,p),.6);\n return min(length(p.xz),abs(p.y))/s+.001;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 3.0\n// B: 1.0\n// C: 0.6\n// Offset: N/A\n\n float s=A,e;\n float3 p_iter = p;\n for(int i=0;i++<3;p_iter=float3(2,4,2)-abs(abs(p_iter)*e-float3(3,6,1)))\n s=mul(s, e=B/min(dot(p_iter,p_iter),C));\n return min(length(p_iter.xz),abs(p_iter.y))/s+0.001;", "A": 3.0, "B": 1.0, "C": 0.6, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n float s=3., e;\n s*=e=3./min(dot(p,p),50.);\n p=abs(p)*e;\n for(int i=0;i++<5;)\n p=vec3(2,4,2)-abs(p-vec3(4,4,2)),\n s*=e=8./min(dot(p,p),9.),\n p=abs(p)*e;\n return min(length(p.xz)-.1,p.y)/s;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 3.0\n// B: 3.0\n// C: 8.0\n// Offset: (4,4,2)\n\n float s=A, e;\n float3 p_iter = p;\n s=mul(s, e=B/min(dot(p_iter,p_iter),50.0));\n p_iter=mul(abs(p_iter),e);\n for(int i=0;i++<5;)\n p_iter=float3(2,4,2)-abs(p_iter-Offset),\n s=mul(s, e=C/min(dot(p_iter,p_iter),9.0)),\n p_iter=mul(abs(p_iter),e);\n return min(length(p_iter.xz)-0.1,p_iter.y)/s;", "A": 3.0, "B": 3.0, "C": 8.0, "OffsetX": 4.0, "OffsetY": 4.0, "OffsetZ": 2.0 }, { "Author": "yonatan", "OriginalCode": "float de(vec3 p){\n float s=3., offset=8., e;\n for(int i=0;i++<9;p=vec3(2,4,2)-abs(abs(p)*e-vec3(4,4,2)))\n s*=e=max(1.,(8.+offset)/dot(p,p));\n return min(length(p.xz),p.y)/s;\n }", "ConvertedCode": "// author: yonatan\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 3.0\n// B: 8.0\n// C: 8.0\n// Offset: N/A\n\n float s=A, offset_val=B, e;\n float3 p_iter = p;\n for(int i=0;i++<9;p_iter=float3(2,4,2)-abs(abs(p_iter)*e-float3(4,4,2)))\n s=mul(s, e=max(1.0,(C+offset_val)/dot(p_iter,p_iter)));\n return min(length(p_iter.xz),p_iter.y)/s;", "A": 3.0, "B": 8.0, "C": 8.0, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n p=sin(2.8*p+5.*sin(p*.3));\n float s=2., e;\n for(int i=0;i++<6;)\n p=abs(p-1.7)-1.5,\n s*=e=2.3/clamp(dot(p,p),.3,1.2),\n p=abs(p)*e;\n return length(p.zy)/s;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 2.8\n// B: 5.0\n// C: 0.3\n// Offset: N/A\n\n float3 p_iter = sin(A*p+B*sin(p*C));\n float s=2.0, e;\n for(int i=0;i++<6;)\n p_iter=abs(p_iter-1.7)-1.5,\n s=mul(s, e=2.3/clamp(dot(p_iter,p_iter),0.3,1.2)),\n p_iter=mul(abs(p_iter),e);\n return length(p_iter.zy)/s;", "A": 2.8, "B": 5.0, "C": 0.3, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "Nameless", "OriginalCode": "float de(vec3 p0){\n p0=p0/10.;\n p0 = mod(p0, 2.)-1.;\n vec4 p = vec4(p0, 1.);\n p=abs(p);\n if(p.x < p.z)p.xz = p.zx;\n if(p.z < p.y)p.zy = p.yz;\n if(p.y < p.x)p.yx = p.xy;\n for(int i = 0; i < 8; i++){\n if(p.x < p.z)p.xz = p.zx;\n if(p.z < p.y)p.zy = p.yz;\n if(p.y < p.x)p.yx = p.xy;\n p.xyz = abs(p.xyz);\n p*=(1.6/clamp(dot(p.xyz,p.xyz),0.6,1.));\n p.xyz-=vec3(0.7,1.8,0.5);\n p*=1.2;\n }\n float m = 1.5;\n p.xyz-=clamp(p.xyz,-m,m);\n return (length(p.xyz)/p.w)*10.;\n }", "ConvertedCode": "// author: Nameless\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 10.0\n// B: 2.0\n// C: 1.6\n// Offset: (0.7,1.8,0.5)\n\n float3 p0=p/A;\n p0 = fmod(p0, B)-1.0;\n float4 p_iter = float4(p0, 1.0);\n p_iter=abs(p_iter);\n if(p_iter.x < p_iter.z)p_iter.xz = p_iter.zx;\n if(p_iter.z < p_iter.y)p_iter.zy = p_iter.yz;\n if(p_iter.y < p_iter.x)p_iter.yx = p_iter.xy;\n for(int i = 0; i < 8; i++){\n if(p_iter.x < p_iter.z)p_iter.xz = p_iter.zx;\n if(p_iter.z < p_iter.y)p_iter.zy = p_iter.yz;\n if(p_iter.y < p_iter.x)p_iter.yx = p_iter.xy;\n p_iter.xyz = abs(p_iter.xyz);\n p_iter=mul(p_iter,(C/clamp(dot(p_iter.xyz,p_iter.xyz),0.6,1.0)));\n p_iter.xyz-=Offset;\n p_iter=mul(p_iter,1.2);\n }\n float m = 1.5;\n p_iter.xyz-=clamp(p_iter.xyz,-m,m);\n return (length(p_iter.xyz)/p_iter.w)*10.0;", "A": 10.0, "B": 2.0, "C": 1.6, "OffsetX": 0.7, "OffsetY": 1.8, "OffsetZ": 0.5 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n float s=5., e;\n p=p/dot(p,p)+1.;\n for(int i=0;i++<8;p*=e)\n p=1.-abs(p-1.),\n s*=e=1.6/min(dot(p,p),1.5);\n return length(cross(p,normalize(vec3(1))))/s-5e-4;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 5.0\n// B: 1.6\n// C: 1.5\n// Offset: N/A\n\n float s=A, e;\n float3 p_iter = p/dot(p,p)+1.0;\n for(int i=0;i++<8;p_iter=mul(p_iter,e))\n p_iter=1.0-abs(p_iter-1.0),\n s=mul(s, e=B/min(dot(p_iter,p_iter),C));\n return length(cross(p_iter,normalize(float3(1))))/s-5e-4;", "A": 5.0, "B": 1.6, "C": 1.5, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n float s=3., e, offset = 1.; //offset can be adjusted\n for(int i=0;i++<8;p*=e)\n p=abs(p-vec3(1,3,1.5+offset*.3))-vec3(1,3.+offset*.3,2),\n p*=-1., s*=e=7./clamp(dot(p,p),.7,7.);\n return (p.z)/s+1e-3;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 3.0\n// B: 1.0\n// C: 7.0\n// Offset: N/A\n\n float s=A, e, offset_val = B; //offset can be adjusted\n float3 p_iter = p;\n for(int i=0;i++<8;p_iter=mul(p_iter,e))\n p_iter=abs(p_iter-float3(1,3,1.5+offset_val*0.3))-float3(1,3.0+offset_val*0.3,2),\n p_iter=mul(p_iter,-1.0), s=mul(s, e=C/clamp(dot(p_iter,p_iter),0.7,7.0));\n return (p_iter.z)/s+1e-3;", "A": 3.0, "B": 1.0, "C": 7.0, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n p=sin(p+3.*sin(p*.5));\n float s=2., e;\n for(int i=0;i++<5;)\n p=abs(p-1.7)-1.3,\n s*=e=2./min(dot(p,p),1.5),\n p=abs(p)*e-1.;\n return length(p)/s;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 3.0\n// B: 0.5\n// C: 2.0\n// Offset: N/A\n\n float3 p_iter = sin(p+A*sin(p*B));\n float s=C, e;\n for(int i=0;i++<5;)\n p_iter=abs(p_iter-1.7)-1.3,\n s=mul(s, e=2.0/min(dot(p_iter,p_iter),1.5)),\n p_iter=mul(abs(p_iter),e)-1.0;\n return length(p_iter)/s;", "A": 3.0, "B": 0.5, "C": 2.0, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n #define M(p)p=vec2(sin(atan(p.x,p.y)*4.)/3.,1)*length(p),p.y-=2.\n float i,g,e,s;\n for(s=3.;s<4e4;s*=3.)\n M(p.xy),\n M(p.zy),\n p*=3.;\n return length(p.xy)/s-.001;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 3.0\n// B: 3.0\n// C: N/A\n// Offset: N/A\n\n float i,g,e,s;\n float3 p_iter = p;\n for(s=A;s<4e4;s=mul(s,B))\n p_iter.xy=mul(float2(sin(atan2(p_iter.xy.x,p_iter.xy.y)*4.0)/3.0,1),length(p_iter.xy)),p_iter.xy.y-=2.0,\n p_iter.zy=mul(float2(sin(atan2(p_iter.zy.x,p_iter.zy.y)*4.0)/3.0,1),length(p_iter.zy)),p_iter.zy.y-=2.0,\n p_iter=mul(p_iter, 3.0);\n return length(p_iter.xy)/s-0.001;", "A": 3.0, "B": 3.0, "C": 0.0, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n p=1.-abs(abs(p+sin(p))-1.);\n p=p.x < p.y?p.zxy:p.zyx;\n float s=5., l;\n for(int j=0;j++<4;)\n s*=l=2./min(dot(p,p),1.5),\n p=abs(p)*l-vec3(2,1,3);\n return length(p.yz)/s;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 5.0\n// B: 2.0\n// C: 1.5\n// Offset: (2,1,3)\n\n float3 p_iter =1.0-abs(abs(p+sin(p))-1.0);\n p_iter=p_iter.x < p_iter.y?p_iter.zxy:p_iter.zyx;\n float s=A, l;\n for(int j=0;j++<4;)\n s=mul(s, l=B/min(dot(p_iter,p_iter),C)),\n p_iter=mul(abs(p_iter),l)-Offset;\n return length(p_iter.yz)/s;", "A": 5.0, "B": 2.0, "C": 1.5, "OffsetX": 2.0, "OffsetY": 1.0, "OffsetZ": 3.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n float s=3., e;\n for(int j=0;++j<5;)\n s*=e=1./min(dot(p,p),1.),\n p=abs(p)*e-1.5;\n return length(p.yz)/s;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 3.0\n// B: 1.0\n// C: 1.5\n// Offset: N/A\n\n float s=A, e;\n float3 p_iter = p;\n for(int j=0;++j<5;)\n s=mul(s, e=B/min(dot(p_iter,p_iter),1.0)),\n p_iter=mul(abs(p_iter),e)-C;\n return length(p_iter.yz)/s;", "A": 3.0, "B": 1.0, "C": 1.5, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n float s=2., e;\n for(int j=0;j++<8;)\n s*=e=2./clamp(dot(p,p),.2,1.),\n p=abs(p)*e-vec3(.5,8,.5);\n return length(cross(p,vec3(1,1,-1)))/s;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 2.0\n// B: 2.0\n// C: 0.2\n// Offset: (0.5,8,0.5)\n\n float s=A, e;\n float3 p_iter = p;\n for(int j=0;j++<8;)\n s=mul(s, e=B/clamp(dot(p_iter,p_iter),C,1.0)),\n p_iter=mul(abs(p_iter),e)-Offset;\n return length(cross(p_iter,float3(1,1,-1)))/s;", "A": 2.0, "B": 2.0, "C": 0.2, "OffsetX": 0.5, "OffsetY": 8.0, "OffsetZ": 0.5 }, { "Author": "yonatan", "OriginalCode": "float de(vec3 p){\n p.xz=mod(p.xz,2.)-1.;\n vec3 q=p;\n float s=2., e;\n for(int j=0;j++<8;)\n s*=e=2./clamp(dot(p,p),.5,1.),\n p=abs(p)*e-vec3(.5,8,.5);\n return max(q.y,length(p.xz)/s);\n }", "ConvertedCode": "// author: yonatan\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 2.0\n// B: 2.0\n// C: 0.5\n// Offset: (0.5,8,0.5)\n\n float3 p_iter = p;\n p_iter.xz=fmod(p_iter.xz,A)-1.0;\n float3 q=p_iter;\n float s=2.0, e;\n for(int j=0;j++<8;)\n s=mul(s, e=B/clamp(dot(p_iter,p_iter),C,1.0)),\n p_iter=mul(abs(p_iter),e)-Offset;\n return max(q.y,length(p_iter.xz)/s);", "A": 2.0, "B": 2.0, "C": 0.5, "OffsetX": 0.5, "OffsetY": 8.0, "OffsetZ": 0.5 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n p.xz=abs(p.xz)-1.;\n p.x>p.z?p=p.zyx:p;\n float s=2., e;\n for(int j=0;j++<7;)\n s*=e=2.2/clamp(dot(p,p),.3,1.2),\n p=abs(p)*e-vec3(1,8,.03);\n return length(p.yz)/s;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 2.0\n// B: 2.2\n// C: 0.3\n// Offset: (1,8,0.03)\n\n float3 p_iter = p;\n p_iter.xz=abs(p_iter.xz)-1.0;\n p_iter.x>p_iter.z?p_iter=p_iter.zyx:p_iter;\n float s=A, e;\n for(int j=0;j++<7;)\n s=mul(s, e=B/clamp(dot(p_iter,p_iter),C,1.2)),\n p_iter=mul(abs(p_iter),e)-Offset;\n return length(p_iter.yz)/s;", "A": 2.0, "B": 2.2, "C": 0.3, "OffsetX": 1.0, "OffsetY": 8.0, "OffsetZ": 0.03 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n float s=2., e;\n for(int j=0;j++<7;)\n s*=e=2.2/clamp(dot(p,p),.3,1.2),\n p=abs(p)*e-vec3(1,8,1);\n return length(cross(p,vec3(1,1,-1)))/s;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 2.0\n// B: 2.2\n// C: 0.3\n// Offset: (1,8,1)\n\n float s=A, e;\n float3 p_iter = p;\n for(int j=0;j++<7;)\n s=mul(s, e=B/clamp(dot(p_iter,p_iter),C,1.2)),\n p_iter=mul(abs(p_iter),e)-Offset;\n return length(cross(p_iter,float3(1,1,-1)))/s;", "A": 2.0, "B": 2.2, "C": 0.3, "OffsetX": 1.0, "OffsetY": 8.0, "OffsetZ": 1.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n p.xz=mod(p.xz,2.)-1.;\n float s=2., e;\n for(int j=0;j++<8;)\n s*=e=2./clamp(dot(p,p),.5,1.),\n p=abs(p)*e-vec3(.5,8,.5);\n return length(p.xz)/s;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 2.0\n// B: 2.0\n// C: 0.5\n// Offset: (0.5,8,0.5)\n\n float3 p_iter = p;\n p_iter.xz=fmod(p_iter.xz,A)-1.0;\n float s=2.0, e;\n for(int j=0;j++<8;)\n s=mul(s, e=B/clamp(dot(p_iter,p_iter),C,1.0)),\n p_iter=mul(abs(p_iter),e)-Offset;\n return length(p_iter.xz)/s;", "A": 2.0, "B": 2.0, "C": 0.5, "OffsetX": 0.5, "OffsetY": 8.0, "OffsetZ": 0.5 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n float s=2.,e;\n for(int i=0;i<9;i++){\n p=.5-abs(p-.5);\n p.x < p.z?p=p.zyx:p;\n p.z < p.y?p=p.xzy:p;\n s*=e=2.4;\n p=abs(p)*e-vec3(.1,13,5);\n }\n return length(p)/s-0.01;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 2.0\n// B: 0.5\n// C: 0.5\n// Offset: (0.1,13,5)\n\n float s=A,e;\n float3 p_iter = p;\n for(int i=0;i<9;i++){\n p_iter=B-abs(p_iter-C);\n p_iter.x < p_iter.z?p_iter=p_iter.zyx:p_iter;\n p_iter.z < p_iter.y?p_iter=p_iter.xzy:p_iter;\n s=mul(s, e=2.4);\n p_iter=mul(abs(p_iter),e)-Offset;\n }\n return length(p_iter)/s-0.01;", "A": 2.0, "B": 0.5, "C": 0.5, "OffsetX": 0.1, "OffsetY": 13.0, "OffsetZ": 5.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n float s=2., e;\n for(int i=0;i++<7;){ \n p.xz=.8-abs(p.xz);\n p.x < p.z?p=p.zyx:p;\n s*=e=2.1/min(dot(p,p),1.);\n p=abs(p)*e-vec3(1,18,9);\n }\n return length(p)/s-0.01;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 2.0\n// B: 0.8\n// C: 2.1\n// Offset: (1,18,9)\n\n float s=A, e;\n float3 p_iter = p;\n for(int i=0;i++<7;){ \n p_iter.xz=B-abs(p_iter.xz);\n p_iter.x < p_iter.z?p_iter=p_iter.zyx:p_iter;\n s=mul(s, e=C/min(dot(p_iter,p_iter),1.0));\n p_iter=mul(abs(p_iter),e)-Offset;\n }\n return length(p_iter)/s-0.01;", "A": 2.0, "B": 0.8, "C": 2.1, "OffsetX": 1.0, "OffsetY": 18.0, "OffsetZ": 9.0 }, { "Author": "yonatan", "OriginalCode": "float de(vec3 p){ \n float n=1.+snoise3D(p), s=4., e;\n for(int i=0;i++<7;p.y-=20.*n)\n p.xz=.8-abs(p.xz),\n p.x < p.z?p=p.zyx:p,\n s*=e=2.1/min(dot(p,p),1.),\n p=abs(p)*e-n;\n return length(p)/s+1e-4;\n }", "ConvertedCode": "// author: yonatan\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 4.0\n// B: 20.0\n// C: 0.8\n// Offset: N/A\n// Simplex Noise 3D, ported from Stefan Gustavson's and Ashima's work\nfloat3 mod289(float3 x) { return x - floor(x * (1.0 / 289.0)) * 289.0; }\nfloat4 mod289(float4 x) { return x - floor(x * (1.0 / 289.0)) * 289.0; }\nfloat4 permute(float4 x) { return mod289(((x*34.0)+1.0)*x); }\nfloat4 taylorInvSqrt(float4 r) { return 1.79284291400159 - 0.85373472095314 * r; }\nfloat snoise3D(float3 v) {\n const float2 C = float2(1.0/6.0, 1.0/3.0);\n const float4 D = float4(0.0, 0.5, 1.0, 2.0);\n float3 i = floor(v + dot(v, C.yyy));\n float3 x0 = v - i + dot(i, C.xxx);\n float3 g = step(x0.yzx, x0.xyz);\n float3 l = 1.0 - g;\n float3 i1 = min(g.xyz, l.zxy);\n float3 i2 = max(g.xyz, l.zxy);\n float3 x1 = x0 - i1 + C.xxx;\n float3 x2 = x0 - i2 + C.yyy;\n float3 x3 = x0 - D.yyy;\n i = mod289(i);\n float4 p = permute(permute(permute(i.z + float4(0.0, i1.z, i2.z, 1.0)) + i.y + float4(0.0, i1.y, i2.y, 1.0)) + i.x + float4(0.0, i1.x, i2.x, 1.0));\n float n_ = 0.142857142857;\n float3 ns = n_ * D.wyz - D.xzx;\n float4 j = p - 49.0 * floor(p * ns.z * ns.z);\n float4 x_ = floor(j * ns.z);\n float4 y_ = floor(j - 7.0 * x_);\n float4 x = x_ * ns.x + ns.yyyy;\n float4 y = y_ * ns.x + ns.yyyy;\n float4 h = 1.0 - abs(x) - abs(y);\n float4 b0 = float4(x.xy, y.xy);\n float4 b1 = float4(x.zw, y.zw);\n float4 s0 = floor(b0)*2.0 + 1.0;\n float4 s1 = floor(b1)*2.0 + 1.0;\n float4 sh = -step(h, 0.0);\n float4 a0 = b0.xzyw + s0.xzyw*sh.xxyy;\n float4 a1 = b1.xzyw + s1.xzyw*sh.zzww;\n float3 p0 = float3(a0.xy,h.x);\n float3 p1 = float3(a0.zw,h.y);\n float3 p2 = float3(a1.xy,h.z);\n float3 p3 = float3(a1.zw,h.w);\n float4 norm = taylorInvSqrt(float4(dot(p0,p0), dot(p1,p1), dot(p2,p2), dot(p3,p3)));\n p0 *= norm.x; p1 *= norm.y; p2 *= norm.z; p3 *= norm.w;\n float4 m = max(0.6 - float4(dot(x0,x0), dot(x1,x1), dot(x2,x2), dot(x3,x3)), 0.0);\n m = m*m;\n return 42.0 * dot(m*m, float4(dot(p0,x0), dot(p1,x1), dot(p2,x2), dot(p3,x3)));\n}\n\n float n=1.0+snoise3D(p), s=A, e;\n float3 p_iter = p;\n for(int i=0;i++<7;p_iter.y-=B*n)\n p_iter.xz=C-abs(p_iter.xz),\n p_iter.x < p_iter.z?p_iter=p_iter.zyx:p_iter,\n s=mul(s, e=2.1/min(dot(p_iter,p_iter),1.0)),\n p_iter=mul(abs(p_iter),e)-n;\n return length(p_iter)/s+1e-4;", "A": 4.0, "B": 20.0, "C": 0.8, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n float s=3., e;\n for(int i=0;i++<8;)\n p=mod(p-1.,2.)-1.,\n s*=e=1.4/dot(p,p),\n p*=e;\n return length(p.yz)/s;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 3.0\n// B: 1.4\n// C: N/A\n// Offset: N/A\n\n float s=A, e;\n float3 p_iter = p;\n for(int i=0;i++<8;)\n p_iter=fmod(p_iter-1.0,2.0)-1.0,\n s=mul(s, e=B/dot(p_iter,p_iter)),\n p_iter=mul(p_iter,e);\n return length(p_iter.yz)/s;", "A": 3.0, "B": 1.4, "C": 0.0, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n float s=4., e;\n for(int i=0;i++<7;p.y-=10.)\n p.xz=.8-abs(p.xz),\n p.x < p.z?p=p.zyx:p,\n s*=e=2.5/clamp(dot(p,p),.1,1.2),\n p=abs(p)*e-1.;\n return length(p)/s+.001;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 4.0\n// B: 10.0\n// C: 0.8\n// Offset: N/A\n\n float s=A, e;\n float3 p_iter = p;\n for(int i=0;i++<7;p_iter.y-=B)\n p_iter.xz=C-abs(p_iter.xz),\n p_iter.x < p_iter.z?p_iter=p_iter.zyx:p_iter,\n s=mul(s, e=2.5/clamp(dot(p_iter,p_iter),0.1,1.2)),\n p_iter=mul(abs(p_iter),e)-1.0;\n return length(p_iter)/s+0.001;", "A": 4.0, "B": 10.0, "C": 0.8, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n float s=2., e;\n for(int i=0;i++<10;){ \n p=.3-abs(p-.8);\n p.x < p.z?p=p.zyx:p;\n p.z < p.y?p=p.xzy:p;\n s*=e=1.7;\n p=abs(p)*e-vec3(1,50,5);\n }\n return length(p.xy)/s+.001;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 2.0\n// B: 0.3\n// C: 0.8\n// Offset: (1,50,5)\n\n float s=A, e;\n float3 p_iter = p;\n for(int i=0;i++<10;){ \n p_iter=B-abs(p_iter-C);\n p_iter.x < p_iter.z?p_iter=p_iter.zyx:p_iter;\n p_iter.z < p_iter.y?p_iter=p_iter.xzy:p_iter;\n s=mul(s, e=1.7);\n p_iter=mul(abs(p_iter),e)-Offset;\n }\n return length(p_iter.xy)/s+0.001;", "A": 2.0, "B": 0.3, "C": 0.8, "OffsetX": 1.0, "OffsetY": 50.0, "OffsetZ": 5.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n float s=1., e, offset=0.26; // vary between 0 and 1\n for(int i=0;i++<5;){ \n s*=e=2./min(dot(p,p),1.);\n p=abs(p)*e-vec3(1,10.*offset,1);\n }\n return length(max(abs(p)-1.,0.))/s;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 1.0\n// B: 0.26\n// C: 2.0\n// Offset: N/A\n\n float s=A, e, offset_val=B; // vary between 0 and 1\n float3 p_iter = p;\n for(int i=0;i++<5;){ \n s=mul(s, e=C/min(dot(p_iter,p_iter),1.0));\n p_iter=mul(abs(p_iter),e)-float3(1,10.0*offset_val,1);\n }\n return length(max(abs(p_iter)-1.0,0.0))/s;", "A": 1.0, "B": 0.26, "C": 2.0, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n float s=2.5, e;\n p=abs(mod(p-1.,2.)-1.)-1.;\n for(int j=0;j++<10;)\n p=1.-abs(p-1.),\n s*=e=-1.8/dot(p,p),\n p=p*e-.7;\n return abs(p.z)/s+.001;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 2.5\n// B: 1.8\n// C: 0.7\n// Offset: N/A\n\n float s=A, e;\n float3 p_iter =abs(fmod(p-1.0,2.0)-1.0)-1.0;\n for(int j=0;j++<10;)\n p_iter=1.0-abs(p_iter-1.0),\n s=mul(s, e=-B/dot(p_iter,p_iter)),\n p_iter=p_iter*e-C;\n return abs(p_iter.z)/s+0.001;", "A": 2.5, "B": 1.8, "C": 0.7, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n float s=2., e;\n for(int j=0;++j<8;s*=e=2./clamp(dot(p,p),.4,1.),p=abs(p)*e-vec3(2,1,.7));\n return length(p)/s;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 2.0\n// B: 2.0\n// C: 0.4\n// Offset: (2,1,0.7)\n\n float s=A, e;\n float3 p_iter = p;\n for(int j=0;++j<8;s=mul(s, e=B/clamp(dot(p_iter,p_iter),C,1.0)),p_iter=mul(abs(p_iter),e)-Offset);\n return length(p_iter)/s;", "A": 2.0, "B": 2.0, "C": 0.4, "OffsetX": 2.0, "OffsetY": 1.0, "OffsetZ": 0.7 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n float s=2., e;\n for(int j=0;++j<8;s*=e=2./clamp(dot(p,p),.4,1.),p=abs(p)*e-vec3(2,1,.7));\n return length(p-clamp(p,-2.,2.))/s;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 2.0\n// B: 2.0\n// C: 0.4\n// Offset: (2,1,0.7)\n\n float s=A, e;\n float3 p_iter = p;\n for(int j=0;++j<8;s=mul(s, e=B/clamp(dot(p_iter,p_iter),C,1.0)),p_iter=mul(abs(p_iter),e)-Offset);\n return length(p_iter-clamp(p_iter,-2.0,2.0))/s;", "A": 2.0, "B": 2.0, "C": 0.4, "OffsetX": 2.0, "OffsetY": 1.0, "OffsetZ": 0.7 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n float s=2., e;\n for(int j=0;++j<18;s*=e=2./clamp(dot(p,p),.4,1.),p=abs(p)*e-vec3(2,1,.7));\n return length(p)/s;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 2.0\n// B: 2.0\n// C: 0.4\n// Offset: (2,1,0.7)\n\n float s=A, e;\n float3 p_iter = p;\n for(int j=0;++j<18;s=mul(s, e=B/clamp(dot(p_iter,p_iter),C,1.0)),p_iter=mul(abs(p_iter),e)-Offset);\n return length(p_iter)/s;", "A": 2.0, "B": 2.0, "C": 0.4, "OffsetX": 2.0, "OffsetY": 1.0, "OffsetZ": 0.7 }, { "Author": "amini", "OriginalCode": "float de(vec3 p){\n float s=3., e;\n s*=e=3./min(dot(p,p),50.);\n p=abs(p)*e;\n for(int i=0;i++<5;)\n p=vec3(8,4,2)-abs(p-vec3(8,4,2)),\n s*=e=8./min(dot(p,p),9.),\n p=abs(p)*e;\n return min(length(p.xz)-.1,p.y)/s;\n }", "ConvertedCode": "// author: amini\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 3.0\n// B: 3.0\n// C: 8.0\n// Offset: (8,4,2)\n\n float s=A, e;\n float3 p_iter = p;\n s=mul(s, e=B/min(dot(p_iter,p_iter),50.0));\n p_iter=mul(abs(p_iter),e);\n for(int i=0;i++<5;)\n p_iter=float3(8,4,2)-abs(p_iter-Offset),\n s=mul(s, e=C/min(dot(p_iter,p_iter),9.0)),\n p_iter=mul(abs(p_iter),e);\n return min(length(p_iter.xz)-0.1,p_iter.y)/s;", "A": 3.0, "B": 3.0, "C": 8.0, "OffsetX": 8.0, "OffsetY": 4.0, "OffsetZ": 2.0 }, { "Author": "Kali", "OriginalCode": "float de(vec3 p){\n p.x = abs(p.x) - 3.3;\n p.z = mod(p.z + 2.0, 4.0) - 2.0;\n vec4 q = vec4(p, 1);\n q.xyz -= 1.0;\n q.xyz = q.zxy;\n for(int i = 0; i < 6; i++) {\n q.xyz = abs(q.xyz + 1.0) - 1.0;\n q /= clamp(dot(q.xyz, q.xyz), 0.25, 1.0);\n q *= 1.15;\n float s = sin(-0.35);\n float c = cos(-0.35);\n q.xy = mat2(c,s,-s,c)*q.xy;\n }\n return (length(q.xyz) - 1.5)/q.w;\n }", "ConvertedCode": "// author: Kali\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 3.3\n// B: 1.15\n// C: 0.35\n// Offset: N/A\n\n float3 p_iter = p;\n p_iter.x = abs(p_iter.x) - A;\n p_iter.z = fmod(p_iter.z + 2.0, 4.0) - 2.0;\n float4 q = float4(p_iter, 1);\n q.xyz -= 1.0;\n q.xyz = q.zxy;\n for(int i = 0; i < 6; i++) {\n q.xyz = abs(q.xyz + 1.0) - 1.0;\n q /= clamp(dot(q.xyz, q.xyz), 0.25, 1.0);\n q = mul(q, B);\n float s = sin(-C);\n float c = cos(-0.35);\n q.xy = mul(float2x2(c,s,-s,c),q.xy);\n }\n return (length(q.xyz) - 1.5)/q.w;", "A": 3.3, "B": 1.15, "C": 0.35, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "Kali", "OriginalCode": "float de(vec3 p){\n p.xz=abs(.5-mod(p.xz,1.))+.01;\n float DEfactor=1.;\n for (int i=0; i<14; i++) {\n p = abs(p)-vec3(0.,2.,0.);\n float r2 = dot(p, p);\n float sc=2./clamp(r2,0.4,1.);\n p*=sc;\n DEfactor*=sc;\n p = p - vec3(0.5,1.,0.5);\n }\n return length(p)/DEfactor-.0005;\n }", "ConvertedCode": "// author: Kali\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 0.5\n// B: 0.01\n// C: 2.0\n// Offset: (0.0,2.0,0.0)\n\n float3 p_iter = p;\n p_iter.xz=abs(A-fmod(p_iter.xz,1.0))+B;\n float DEfactor=1.0;\n for (int i=0; i<14; i++) {\n p_iter = abs(p_iter)-Offset;\n float r2 = dot(p_iter, p_iter);\n float sc=C/clamp(r2,0.4,1.0);\n p_iter=mul(p_iter,sc);\n DEfactor=mul(DEfactor,sc);\n p_iter = p_iter - float3(0.5,1.0,0.5);\n }\n return length(p_iter)/DEfactor-0.0005;", "A": 0.5, "B": 0.01, "C": 2.0, "OffsetX": 0.0, "OffsetY": 2.0, "OffsetZ": 0.0 }, { "Author": "Kali", "OriginalCode": "float de(vec3 pos){\n vec3 tpos=pos;\n tpos.xz=abs(.5-mod(tpos.xz,1.));\n vec4 p=vec4(tpos,1.);\n float y=max(0.,.35-abs(pos.y-3.35))/.35;\n for (int i=0; i<7; i++) {\n p.xyz = abs(p.xyz)-vec3(-0.02,1.98,-0.02);\n p=p*(2.0+0.*y)/clamp(dot(p.xyz,p.xyz),.4,1.)-vec4(0.5,1.,0.4,0.);\n p.xz*=mat2(-0.416,-0.91,0.91,-0.416);\n }\n return (length(max(abs(p.xyz)-vec3(0.1,5.0,0.1),vec3(0.0)))-0.05)/p.w;\n }", "ConvertedCode": "// author: Kali\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 0.5\n// B: 0.35\n// C: 3.35\n// Offset: (-0.02,1.98,-0.02)\n\n float3 tpos=p;\n tpos.xz=abs(A-fmod(tpos.xz,1.0));\n float4 p_iter=float4(tpos,1.0);\n float y=max(0.0,B-abs(p.y-C))/0.35;\n for (int i=0; i<7; i++) {\n p_iter.xyz = abs(p_iter.xyz)-Offset;\n p_iter=p_iter*(2.0+0.0*y)/clamp(dot(p_iter.xyz,p_iter.xyz),0.4,1.0)-float4(0.5,1.0,0.4,0.0);\n p_iter.xz=mul(p_iter.xz, float2x2(-0.416,-0.91,0.91,-0.416));\n }\n return (length(max(abs(p_iter.xyz)-float3(0.1,5.0,0.1),float3(0.0)))-0.05)/p_iter.w;", "A": 0.5, "B": 0.35, "C": 3.35, "OffsetX": -0.02, "OffsetY": 1.98, "OffsetZ": -0.02 }, { "Author": "shane", "OriginalCode": "float de(vec3 p){\n const vec3 offs = vec3(1, .75, .5); // Offset point.\n const vec2 a = sin(vec2(0, 1.57079632) + 1.57/2.);\n const mat2 m = mat2(a.y, -a.x, a);\n const vec2 a2 = sin(vec2(0, 1.57079632) + 1.57/4.);\n const mat2 m2 = mat2(a2.y, -a2.x, a2);\n const float s = 5.; // Scale factor.\n float d = 1e5; // Distance.\n p = abs(fract(p*.5)*2. - 1.);\n float amp = 1./s;\n for(int i=0; i<2; i++){\n p.xy = m*p.xy;\n p.yz = m2*p.yz;\n p = abs(p);\n p.xy += step(p.x, p.y)*(p.yx - p.xy);\n p.xz += step(p.x, p.z)*(p.zx - p.xz);\n p.yz += step(p.y, p.z)*(p.zy - p.yz);\n p = p*s + offs*(1. - s);\n p.z -= step(p.z, offs.z*(1. - s)*.5)*offs.z*(1. - s);\n p=abs(p);\n d = min(d, max(max(p.x, p.y), p.z)*amp);\n amp /= s;\n }\n return d - .035;\n }", "ConvertedCode": "// author: shane\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 5.0\n// B: 0.035\n// C: N/A\n// Offset: N/A\n\n const float3 offs = float3(1, 0.75, 0.5); // Offset point.\n const float2 a_vec = sin(float2(0, 1.57079632) + 1.57/2.0);\n const float2x2 m = float2x2(a_vec.y, -a_vec.x, a_vec.x, a_vec.y);\n const float2 a2 = sin(float2(0, 1.57079632) + 1.57/4.0);\n const float2x2 m2 = float2x2(a2.y, -a2.x, a2.x, a2.y);\n const float s = A; // Scale factor.\n float d = 1e5; // Distance.\n float3 p_iter = abs(frac(p*0.5)*2.0 - 1.0);\n float amp = 1.0/s;\n for(int i=0; i<2; i++){\n p_iter.xy = mul(m, p_iter.xy);\n p_iter.yz = mul(m2, p_iter.yz);\n p_iter = abs(p_iter);\n p_iter.xy += step(p_iter.x, p_iter.y)*(p_iter.yx - p_iter.xy);\n p_iter.xz += step(p_iter.x, p_iter.z)*(p_iter.zx - p_iter.xz);\n p_iter.yz += step(p_iter.y, p_iter.z)*(p_iter.zy - p_iter.yz);\n p_iter = p_iter*s + offs*(1.0 - s);\n p_iter.z -= step(p_iter.z, offs.z*(1.0 - s)*0.5)*offs.z*(1.0 - s);\n p_iter=abs(p_iter);\n d = min(d, max(max(p_iter.x, p_iter.y), p_iter.z)*amp);\n amp /= s;\n }\n return d - B;", "A": 5.0, "B": 0.035, "C": 0.0, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "avi", "OriginalCode": "float de(vec3 p) {\n const vec3 va = vec3( 0.0, 0.57735, 0.0 );\n const vec3 vb = vec3( 0.0, -1.0, 1.15470 );\n const vec3 vc = vec3( 1.0, -1.0, -0.57735 );\n const vec3 vd = vec3( -1.0, -1.0, -0.57735 );\n float a = 0.0;\n float s = 1.0;\n float r = 1.0;\n float dm;\n vec3 v;\n for(int i=0; i<16; i++) {\n float d, t;\n d = dot(p-va,p-va); v=va; dm=d; t=0.0;\n d = dot(p-vb,p-vb); if( d < dm ) { v=vb; dm=d; t=1.0; }\n d = dot(p-vc,p-vc); if( d < dm ) { v=vc; dm=d; t=2.0; }\n d = dot(p-vd,p-vd); if( d < dm ) { v=vd; dm=d; t=3.0; }\n p = v + 2.0*(p - v); r*= 2.0;\n a = t + 4.0*a; s*= 4.0;\n }\n return (sqrt(dm)-1.0)/r;\n }", "ConvertedCode": "// author: avi\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: N/A\n// B: N/A\n// C: N/A\n// Offset: N/A\n\n const float3 va = float3( 0.0, 0.57735, 0.0 );\n const float3 vb = float3( 0.0, -1.0, 1.15470 );\n const float3 vc = float3( 1.0, -1.0, -0.57735 );\n const float3 vd = float3( -1.0, -1.0, -0.57735 );\n float a = 0.0;\n float s = 1.0;\n float r = 1.0;\n float dm;\n float3 v;\n float3 p_iter = p;\n for(int i=0; i<16; i++) {\n float d, t;\n d = dot(p_iter-va,p_iter-va); v=va; dm=d; t=0.0;\n d = dot(p_iter-vb,p_iter-vb); if( d < dm ) { v=vb; dm=d; t=1.0; }\n d = dot(p_iter-vc,p_iter-vc); if( d < dm ) { v=vc; dm=d; t=2.0; }\n d = dot(p_iter-vd,p_iter-vd); if( d < dm ) { v=vd; dm=d; t=3.0; }\n p_iter = v + 2.0*(p_iter - v); r=mul(r, 2.0);\n a = t + 4.0*a; s=mul(s, 4.0);\n }\n return (sqrt(dm)-1.0)/r;", "A": 0.0, "B": 0.0, "C": 0.0, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "guil", "OriginalCode": "vec3 foldY(vec3 P, float c){\n float r = length(P.xz);\n float a = atan(P.z, P.x);\n a = mod(a, 2.0 * c) - c;\n P.x = r * cos(a);\n P.z = r * sin(a);\n return P;\n }\n\n float de(vec3 p){\n float l= length(p)-1.;\n float dr = 1.0, g = 1.25;\n vec4 ot=vec4(.3,.5,0.21,1.);\n ot = vec4(1.);\n mat3 tr = rotate3D(-0.55, normalize(vec3(-1., -1., -0.5)));\n\n for(int i=0;i<15;i++) {\n if(i-(i/3)*5==0)\n p = foldY(p, .95);\n p.yz = abs(p.yz);\n p = tr * p * g -1.;\n dr *= g;\n ot=min(ot,vec4(abs(p),dot(p,p)));\n l = min (l ,(length(p)-1.) / dr);\n }\n return l;\n }", "ConvertedCode": "// author: guil\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: N/A\n// B: N/A\n// C: N/A\n// Offset: N/A\n\n// NOTE: This shader uses an undefined function: rotate3D.\n// You will need to provide an implementation for this to compile.\n\n float l= length(p)-1.0;\n float dr = 1.0, g = 1.25;\n float4 ot=float4(0.3,0.5,0.21,1.0);\n ot = float4(1.0);\n float3 p_iter = p;\n float3x3 tr = rotate3D(-0.55, normalize(float3(-1.0, -1.0, -0.5)));\n\n for(int i=0;i<15;i++) {\n if(i-(i/3)*5==0) {\n // Inlined foldY function\n float3 P_fold = p_iter;\n float r_fold = length(P_fold.xz);\n float a_fold = atan2(P_fold.z, P_fold.x);\n a_fold = fmod(a_fold, 2.0 * 0.95) - 0.95;\n P_fold.x = r_fold * cos(a_fold);\n P_fold.z = r_fold * sin(a_fold);\n p_iter = P_fold;\n }\n p_iter.yz = abs(p_iter.yz);\n p_iter = mul(tr, p_iter) * g -1.0;\n dr = mul(dr, g);\n ot=min(ot,float4(abs(p_iter),dot(p_iter,p_iter)));\n l = min (l ,(length(p_iter)-1.0) / dr);\n }\n return l;", "A": 0.0, "B": 0.0, "C": 0.0, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "marvelousbilly", "OriginalCode": "mat3 rotmat(float angle, vec3 axis){\n axis = normalize(axis);\n float s = sin(angle);\n float c = cos(angle);\n float oc = 1.0 - c;\n return mat3(oc * axis.x * axis.x + c, oc * axis.x * axis.y - s * v.z, oc * axis.z * axis.x + s * v.y, oc * axis.x * axis.y + s * v.z, c + (1.0 - c) * axis.y * axis.y, oc * axis.y * axis.z - s * v.x, oc * axis.z * axis.x - s * v.y, oc * axis.y * axis.z + s * v.x, c + (1.0 - c) * axis.z * axis.z);\n}\nfloat de(vec3 p){\n mat3 r = rotmat(3.14159, vec3(0.,1.,0.)); //rotation matrix\n float scale= 2.;\n int Iterations = 10;\n int i;\n vec3 C = vec3(1.,5.4,10.+10.*sin(0.5));\n for(i = 0; i < Iterations; i++){\n p = r * (p);\n float x = p.x; float y = p.y; float z = p.z; float x1 = x; float y1 = y;\n x=abs(x);y = abs(y);\n if(x-y<0.){x1=y;y=x;x=x1;}\n if(x-z<0.){x1=z;z=x;x=x1;}\n if(y-z<0.){y1=z;z=y;y=y1;}\n\n z-=0.5*C.z*(scale-1.)/scale;\n z=-abs(-z);\n z+=0.5*C.z*(scale-1.)/scale;\n\n p = vec3(x,y,z);\n r = rotmat(31.4159/4.+5.60,vec3(1.,0.5,0.6));\n p = r * (p);\n x = p.x; y = p.y; z = p.z;\n\n x=scale*x-C.y*(scale-1.);\n y=scale*y-C.y*(scale-1.);\n z=scale*z;\n\n p = vec3(x,y,z);\n }\n return (length(p) - 2.) * pow(scale,float(-i));\n}", "ConvertedCode": "// author: marvelousbilly\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: N/A\n// B: N/A\n// C: N/A\n// Offset: N/A\n\n// NOTE: This shader contains a reference to an undeclared identifier 'v' in the rotmat function.\n// It has been commented out, but the shader will likely not work as intended without a fix.\n\n/*mat3 rotmat(float angle, float3 axis){\n axis = normalize(axis);\n float s = sin(angle); float c = cos(angle); float oc = 1.0 - c;\n return float3x3(oc * axis.x * axis.x + c, oc * axis.x * axis.y - s * v.z, oc * axis.z * axis.x + s * v.y, oc * axis.x * axis.y + s * v.z, c + (1.0 - c) * axis.y * axis.y, oc * axis.y * axis.z - s * v.x, oc * axis.z * axis.x - s * v.y, oc * axis.y * axis.z + s * v.x, c + (1.0 - c) * axis.z * axis.z);\n}*/\n\n return 0.0; // Conversion failed due to error in original code.", "A": 0.0, "B": 0.0, "C": 0.0, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "adapted from code by marvelousbilly", "OriginalCode": "float de(vec3 p){\n mat3 r = rotate3D(3.14159, vec3(0.,1.,0.));\n float scale= 2.;\n int Iterations = 10;\n int i;\n vec3 C = vec3(1.,5.4,10.+10.*sin(0.5));\n for(i = 0; i < Iterations; i++){\n p = r * (p);\n float x = p.x; float y = p.y; float z = p.z; float x1 = x; float y1 = y;\n\n x=abs(x);y = abs(y);\n if(x-y<0.){x1=y;y=x;x=x1;}\n if(x-z<0.){x1=z;z=x;x=x1;}\n if(y-z<0.){y1=z;z=y;y=y1;}\n\n z-=0.5*C.z*(scale-1.)/scale;\n z=-abs(-z);\n z+=0.5*C.z*(scale-1.)/scale;\n\n p = vec3(x,y,z);\n r = rotate3D(31.4159/4.+5.60,vec3(1.,0.5,0.6));\n p = r * (p);\n x = p.x; y = p.y; z = p.z;\n\n x=scale*x-C.y*(scale-1.);\n y=scale*y-C.y*(scale-1.);\n z=scale*z;\n\n p = vec3(x,y,z);\n }\n return (length(p) - 2.) * pow(scale,float(-i));\n }", "ConvertedCode": "// author: adapted from code by marvelousbilly\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 2.0\n// B: 10.0\n// C: 5.4\n// Offset: N/A\n\n// NOTE: This shader uses an undefined function: rotate3D.\n// You will need to provide an implementation for this to compile.\n\n float3x3 r = rotate3D(3.14159, float3(0.0,1.0,0.0));\n float scale= A;\n int Iterations = B;\n int i;\n float3 p_iter = p;\n float3 _C = float3(1.0,C,10.0+10.0*sin(0.5));\n for(i = 0; i < Iterations; i++){\n p_iter = mul(r, (p_iter));\n float x = p_iter.x; float y = p_iter.y; float z = p_iter.z; float x1 = x; float y1 = y;\n\n x=abs(x);y = abs(y);\n if(x-y<0.0){x1=y;y=x;x=x1;}\n if(x-z<0.0){x1=z;z=x;x=x1;}\n if(y-z<0.0){y1=z;z=y;y=y1;}\n\n z-=0.5*_C.z*(scale-1.0)/scale;\n z=-abs(-z);\n z+=0.5*_C.z*(scale-1.0)/scale;\n\n p_iter = float3(x,y,z);\n r = rotate3D(31.4159/4.0+5.60,float3(1.0,0.5,0.6));\n p_iter = mul(r, (p_iter));\n x = p_iter.x; y = p_iter.y; z = p_iter.z;\n\n x=scale*x-_C.y*(scale-1.0);\n y=scale*y-_C.y*(scale-1.0);\n z=scale*z;\n\n p_iter = float3(x,y,z);\n }\n return (length(p_iter) - 2.0) * pow(scale,float(-i));", "A": 2.0, "B": 10.0, "C": 5.4, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "Nameless", "OriginalCode": "float de(vec3 p0){\n vec4 p = vec4(p0, 1.);\n p.xyz=abs(p.xyz);\n if(p.x > p.z)p.xz = p.zx;\n if(p.z < p.y)p.zy = p.yz;\n if(p.y > p.x)p.yx = p.xy;\n for(int i = 0; i < 8; i++){\n if(p.x > p.z)p.xz = p.zx;\n if(p.z < p.y)p.zy = p.yz;\n if(p.y > p.x)p.yx = p.xy;\n p.xyz = abs(p.xyz);\n p*=(2.15/clamp(dot(p.xyz,p.xyz),.4,1.));\n p.xyz-=vec3(0.3,0.2,1.6);\n }\n float m = 1.5;\n p.xyz-=clamp(p.xyz,-m,m);\n return length(p.xyz)/p.w;\n }", "ConvertedCode": "// author: Nameless\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 2.15\n// B: 0.4\n// C: 1.5\n// Offset: (0.3,0.2,1.6)\n\n float4 p_iter = float4(p, 1.0);\n p_iter.xyz=abs(p_iter.xyz);\n if(p_iter.x > p_iter.z)p_iter.xz = p_iter.zx;\n if(p_iter.z < p_iter.y)p_iter.zy = p_iter.yz;\n if(p_iter.y > p_iter.x)p_iter.yx = p_iter.xy;\n for(int i = 0; i < 8; i++){\n if(p_iter.x > p_iter.z)p_iter.xz = p_iter.zx;\n if(p_iter.z < p_iter.y)p_iter.zy = p_iter.yz;\n if(p_iter.y > p_iter.x)p_iter.yx = p_iter.xy;\n p_iter.xyz = abs(p_iter.xyz);\n p_iter=mul(p_iter,(A/clamp(dot(p_iter.xyz,p_iter.xyz),B,1.0)));\n p_iter.xyz-=Offset;\n }\n float m = C;\n p_iter.xyz-=clamp(p_iter.xyz,-m,m);\n return length(p_iter.xyz)/p_iter.w;", "A": 2.15, "B": 0.4, "C": 1.5, "OffsetX": 0.3, "OffsetY": 0.2, "OffsetZ": 1.6 }, { "Author": "evilryu", "OriginalCode": "void ry(inout vec3 p, float a){\n float c,s;vec3 q=p;\n c = cos(a); s = sin(a);\n p.x = c * q.x + s * q.z;\n p.z = -s * q.x + c * q.z;\n }\n float plane(vec3 p, float y) {\n return length(vec3(p.x, y, p.z) - p);\n }\n float menger_spone(in vec3 z0){\n z0=z0.yzx;\n vec4 z=vec4(z0,1.0);\n vec3 offset =0.83*normalize(vec3(3.4,2., .2));\n float scale = 2.;\n for (int n = 0; n < 8; n++) {\n z = abs(z);\n ry(z.xyz, 1.5);\n if (z.x < z.y)z.xy = z.yx;\n if (z.x < z.z)z.xz = z.zx;\n if (z.y < z.z)z.yz = z.zy;\n ry(z.xyz, -1.21);\n z = z*scale;\n z.xyz -= offset*(scale-1.0);\n }\n return (length(max(abs(z.xyz)-vec3(1.0),0.0))-0.01)/z.w;\n }\n float de(vec3 p){\n float d1 = plane(p, -0.5);\n float d2 = menger_spone(p+vec3(0.,-0.1,0.));\n float d = d1;\n vec3 res = vec3(d1, 0., 0.);\n if(d > d2){\n d = d2;\n res = vec3(d2, 1., 0.0);\n }\n return res.x;\n }", "ConvertedCode": "// author: evilryu\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: N/A\n// B: N/A\n// C: N/A\n// Offset: N/A\nvoid ry(inout float3 p, float a){\n float c,s;float3 q=p;\n c = cos(a); s = sin(a);\n p.x = c * q.x + s * q.z;\n p.z = -s * q.x + c * q.z;\n}\nfloat plane(float3 p, float y) {\n return length(float3(p.x, y, p.z) - p);\n}\nfloat menger_spone(in float3 z0){\n z0=z0.yzx;\n float4 z=float4(z0,1.0);\n float3 local_offset =0.83*normalize(float3(3.4,2.0, 0.2));\n float scale = 2.0;\n for (int n = 0; n < 8; n++) {\n z = abs(z);\n ry(z.xyz, 1.5);\n if (z.x < z.y)z.xy = z.yx;\n if (z.x < z.z)z.xz = z.zx;\n if (z.y < z.z)z.yz = z.zy;\n ry(z.xyz, -1.21);\n z = z*scale;\n z.xyz -= local_offset*(scale-1.0);\n }\n return (length(max(abs(z.xyz)-float3(1.0),0.0))-0.01)/z.w;\n}\n\n float d1 = plane(p, -0.5);\n float d2 = menger_spone(p+float3(0.0,-0.1,0.0));\n float d = d1;\n float3 res = float3(d1, 0.0, 0.0);\n if(d > d2){\n d = d2;\n res = float3(d2, 1.0, 0.0);\n }\n return res.x;", "A": 0.0, "B": 0.0, "C": 0.0, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "adapted from code by jorge2017a1", "OriginalCode": "float de( vec3 p ){ \n vec3 di = abs(p) - vec3(1.);\n float mc = max(di.x, max(di.y, di.z));\n float d = min(mc,length(max(di,0.0)));\n vec4 res = vec4( d, 1.0, 0.0, 0.0 );\n\n const mat3 ma = mat3( 0.60, 0.00, 0.80,\n 0.00, 1.00, 0.00,\n -0.20, 0.00, 0.30 );\n float off = 0.0005;\n float s = 1.0;\n for( int m=0; m<4; m++ ){\n p = ma*(p+off);\n vec3 a = mod( p*s, 2.0 )-1.0;\n s *= 3.0;\n vec3 r = abs(1.0 - 3.0*abs(a));\n float da = max(r.x,r.y);\n float db = max(r.y,r.z);\n float dc = max(r.z,r.x);\n float c = (min(da,min(db,dc))-1.0)/s;\n if( c > d )\n d = c;\n }\n return d;\n }", "ConvertedCode": "// author: adapted from code by jorge2017a1\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 0.0005\n// B: N/A\n// C: N/A\n// Offset: N/A\n\n float3 p_iter = p;\n float3 di = abs(p_iter) - float3(1.0);\n float mc = max(di.x, max(di.y, di.z));\n float d = min(mc,length(max(di,0.0)));\n float4 res = float4( d, 1.0, 0.0, 0.0 );\n\n const float3x3 ma = float3x3( 0.60, 0.00, 0.80,\n 0.00, 1.00, 0.00,\n -0.20, 0.00, 0.30 );\n float off = A;\n float s = 1.0;\n for( int m=0; m<4; m++ ){\n p_iter = mul(ma,(p_iter+off));\n float3 a = fmod( p_iter*s, 2.0 )-1.0;\n s = mul(s, 3.0);\n float3 r = abs(1.0 - 3.0*abs(a));\n float da = max(r.x,r.y);\n float db = max(r.y,r.z);\n float dc = max(r.z,r.x);\n float c = (min(da,min(db,dc))-1.0)/s;\n if( c > d )\n d = c;\n }\n return d;", "A": 0.0005, "B": 0.0, "C": 0.0, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "unknown", "OriginalCode": "float de(vec3 p){\n const float mr=0.25, mxr=1.0;\n const vec4 scale=vec4(-3.12,-3.12,-3.12,3.12),p0=vec4(0.0,1.59,-1.0,0.0);\n vec4 z = vec4(p,1.0);\n for (int n = 0; n < 3; n++) {\n z.xyz=clamp(z.xyz, -0.94, 0.94)*2.0-z.xyz;\n z*=scale/clamp(dot(z.xyz,z.xyz),mr,mxr);\n z+=p0;\n }\n z.y-=3.0*sin(3.0+floor(p.x+0.5)+floor(p.z+0.5));\n float dS=(length(max(abs(z.xyz)-vec3(1.2,49.0,1.4),0.0))-0.06)/z.w;\n return dS;\n }", "ConvertedCode": "// author: unknown\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: N/A\n// B: N/A\n// C: N/A\n// Offset: N/A\n\n const float mr=0.25, mxr=1.0;\n const float4 scale=float4(-3.12,-3.12,-3.12,3.12),p0=float4(0.0,1.59,-1.0,0.0);\n float4 z = float4(p,1.0);\n for (int n = 0; n < 3; n++) {\n z.xyz=clamp(z.xyz, -0.94, 0.94)*2.0-z.xyz;\n z=mul(z,scale/clamp(dot(z.xyz,z.xyz),mr,mxr));\n z+=p0;\n }\n z.y-=3.0*sin(3.0+floor(p.x+0.5)+floor(p.z+0.5));\n float dS=(length(max(abs(z.xyz)-float3(1.2,49.0,1.4),0.0))-0.06)/z.w;\n return dS;", "A": 0.0, "B": 0.0, "C": 0.0, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "shane", "OriginalCode": "mat2 rot2(in float a){ float c = cos(a), s = sin(a); return mat2(c, s, -s, c); }\n float de(vec3 p){\n float d = 1e5;\n const int n = 3;\n const float fn = float(n);\n for(int i = 0; i < n; i++){\n vec3 q = p;\n float a = float(i)*fn*2.422; //*6.283/fn\n a *= a;\n q.z += float(i)*float(i)*1.67; //*3./fn\n q.xy *= rot2(a);\n float b = (length(length(sin(q.xy) + cos(q.yz))) - .15);\n float f = max(0., 1. - abs(b - d));\n d = min(d, b) - .25*f*f;\n }\n return d;\n }", "ConvertedCode": "// author: shane\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 2.422\n// B: 1.67\n// C: 0.15\n// Offset: N/A\n\n float d = 1e5;\n const int n = 3;\n const float fn = float(n);\n float3 p_iter = p;\n for(int i = 0; i < n; i++){\n float3 q = p_iter;\n float a = float(i)*fn*A; //*6.283/fn\n a = mul(a, a);\n q.z += float(i)*float(i)*B; //*3.0/fn\n q.xy = mul(float2x2(cos(a), sin(a), -sin(a), cos(a)), q.xy);\n float b = (length(length(sin(q.xy) + cos(q.yz))) - C);\n float f = max(0.0, 1.0 - abs(b - d));\n d = min(d, b) - 0.25*f*f;\n }\n return d;", "A": 2.422, "B": 1.67, "C": 0.15, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n float a=2.,s=3.,e,l=dot(p,p);\n p=abs(p)-1.;\n p.x < p.y?p=p.yxz:p;\n p.x < p.z?p=p.zyx:p;\n p.y < p.z?p=p.xzy:p;\n for(int i=0;i<8;i++){\n s*=e=2.1/clamp(dot(p,p),.1,1.);\n p=abs(p)*e-vec3(.3*l,1,5.*l);\n }\n p-=clamp(p,-a,a);\n return length(p)/s-0.;\n }", "ConvertedCode": "// author: gaziya5 aka gaz\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 2.0\n// B: 3.0\n// C: 2.1\n// Offset: N/A\n\n float a=A,s=B,e,l=dot(p,p);\n float3 p_iter =p;\n p_iter=abs(p_iter)-1.0;\n p_iter.x < p_iter.y?p_iter=p_iter.yxz:p_iter;\n p_iter.x < p_iter.z?p_iter=p_iter.zyx:p_iter;\n p_iter.y < p_iter.z?p_iter=p_iter.xzy:p_iter;\n for(int i=0;i<8;i++){\n s=mul(s, e=C/clamp(dot(p_iter,p_iter),0.1,1.0));\n p_iter=mul(abs(p_iter),e)-float3(0.3*l,1,5.0*l);\n }\n p_iter-=clamp(p_iter,-a,a);\n return length(p_iter)/s-0.0;", "A": 2.0, "B": 3.0, "C": 2.1, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "unknown", "OriginalCode": "float de(vec3 p0){\n vec4 p = vec4(p0, 1.);\n\n p.xyz=abs(p.xyz);\n if(p.x < p.z)p.xz = p.zx;\n if(p.z < p.y)p.zy = p.yz;\n if(p.y < p.x)p.yx = p.xy;\n for(int i = 0; i < 8; i++){\n if(p.x < p.z)p.xz = p.zx;\n if(p.z < p.y)p.zy = p.yz;\n if(p.y > p.x)p.yx = p.xy;\n p.xyz = abs(p.xyz);\n p*=(1.8/clamp(dot(p.xyz,p.xyz),.0,1.));\n p.xyz-=vec3(3.6,1.9,0.5);\n }\n float m = 1.5;\n p.xyz-=clamp(p.xyz,-m,m);\n return length(p.xyz)/p.w;\n }", "ConvertedCode": "// author: unknown\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 1.8\n// B: 0.0\n// C: 1.5\n// Offset: (3.6,1.9,0.5)\n\n float4 p_iter = float4(p, 1.0);\n\n p_iter.xyz=abs(p_iter.xyz);\n if(p_iter.x < p_iter.z)p_iter.xz = p_iter.zx;\n if(p_iter.z < p_iter.y)p_iter.zy = p_iter.yz;\n if(p_iter.y < p_iter.x)p_iter.yx = p_iter.xy;\n for(int i = 0; i < 8; i++){\n if(p_iter.x < p_iter.z)p_iter.xz = p_iter.zx;\n if(p_iter.z < p_iter.y)p_iter.zy = p_iter.yz;\n if(p_iter.y > p_iter.x)p_iter.yx = p_iter.xy;\n p_iter.xyz = abs(p_iter.xyz);\n p_iter=mul(p_iter,(A/clamp(dot(p_iter.xyz,p_iter.xyz),B,1.0)));\n p_iter.xyz-=Offset;\n }\n float m = C;\n p_iter.xyz-=clamp(p_iter.xyz,-m,m);\n return length(p_iter.xyz)/p_iter.w;", "A": 1.8, "B": 0.0, "C": 1.5, "OffsetX": 3.6, "OffsetY": 1.9, "OffsetZ": 0.5 }, { "Author": "macbooktall", "OriginalCode": "float de(vec3 p0){\n p0 = mod(p0, 2.)-1.;\n vec4 p = vec4(p0, 1.);\n p=abs(p);\n if(p.x < p.z)p.xz = p.zx;\n if(p.z < p.y)p.zy = p.yz;\n if(p.y < p.x)p.yx = p.xy;\n for(int i = 0; i < 8; i++){\n if(p.x < p.z)p.xz = p.zx;\n if(p.z < p.y)p.zy = p.yz;\n if(p.y < p.x)p.yx = p.xy;\n p.xyz = abs(p.xyz);\n p*=(1.6/clamp(dot(p.xyz,p.xyz),0.6,1.));\n p.xyz-=vec3(0.7,1.8,0.5);\n p*=1.2;\n }\n float m = 1.5;\n p.xyz-=clamp(p.xyz,-m,m);\n return length(p.xyz)/p.w;\n }", "ConvertedCode": "// author: macbooktall\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 2.0\n// B: 1.6\n// C: 0.6\n// Offset: (0.7,1.8,0.5)\n\n float3 p0 = fmod(p, A)-1.0;\n float4 p_iter = float4(p0, 1.0);\n p_iter=abs(p_iter);\n if(p_iter.x < p_iter.z)p_iter.xz = p_iter.zx;\n if(p_iter.z < p_iter.y)p_iter.zy = p_iter.yz;\n if(p_iter.y < p_iter.x)p_iter.yx = p_iter.xy;\n for(int i = 0; i < 8; i++){\n if(p_iter.x < p_iter.z)p_iter.xz = p_iter.zx;\n if(p_iter.z < p_iter.y)p_iter.zy = p_iter.yz;\n if(p_iter.y < p_iter.x)p_iter.yx = p_iter.xy;\n p_iter.xyz = abs(p_iter.xyz);\n p_iter=mul(p_iter,(B/clamp(dot(p_iter.xyz,p_iter.xyz),C,1.0)));\n p_iter.xyz-=Offset;\n p_iter=mul(p_iter,1.2);\n }\n float m = 1.5;\n p_iter.xyz-=clamp(p_iter.xyz,-m,m);\n return length(p_iter.xyz)/p_iter.w;", "A": 2.0, "B": 1.6, "C": 0.6, "OffsetX": 0.7, "OffsetY": 1.8, "OffsetZ": 0.5 }, { "Author": "macbooktall", "OriginalCode": "void pR(inout vec2 p, float a) {\n p = cos(a)*p + sin(a)*vec2(p.y, -p.x);\n }\n\n float de(vec3 p){\n const int iterations = 20;\n float d = -2.; // vary this parameter, range is like -20 to 20\n p=p.yxz;\n pR(p.yz, 1.570795);\n p.x += 6.5;\n p.yz = mod(abs(p.yz)-.0, 20.) - 10.;\n float scale = 1.25;\n p.xy /= (1.+d*d*0.0005);\n\n float l = 0.;\n for (int i=0; i < iterations; i++) {\n p.xy = abs(p.xy);\n p = p*scale + vec3(-3. + d*0.0095,-1.5,-.5);\n pR(p.xy,0.35-d*0.015);\n pR(p.yz,0.5+d*0.02);\n vec3 p6 = p*p*p; p6=p6*p6;\n l =pow(p6.x + p6.y + p6.z, 1./6.);\n }\n return l*pow(scale, -float(iterations))-.15;\n }", "ConvertedCode": "// author: macbooktall\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: -2.0\n// B: 1.25\n// C: 0.15\n// Offset: N/A\n\n const int iterations = 20;\n float d = A; // vary this parameter, range is like -20 to 20\n float3 p_iter=p.yxz;\n // Inlined pR\n p_iter.yz = cos(1.570795)*p_iter.yz + sin(1.570795)*float2(p_iter.yz.y, -p_iter.yz.x);\n\n p_iter.x += 6.5;\n p_iter.yz = fmod(abs(p_iter.yz)-0.0, 20.0) - 10.0;\n float scale = B;\n p_iter.xy /= (1.0+d*d*0.0005);\n\n float l = 0.0;\n for (int i=0; i < iterations; i++) {\n p_iter.xy = abs(p_iter.xy);\n p_iter = p_iter*scale + float3(-3.0 + d*0.0095,-1.5,-0.5);\n p_iter.xy = cos(0.35-d*0.015)*p_iter.xy + sin(0.35-d*0.015)*float2(p_iter.xy.y, -p_iter.xy.x);\n p_iter.yz = cos(0.5+d*0.02)*p_iter.yz + sin(0.5+d*0.02)*float2(p_iter.yz.y, -p_iter.yz.x);\n float3 p6 = p_iter*p_iter*p_iter; p6=p6*p6;\n l =pow(p6.x + p6.y + p6.z, 1.0/6.0);\n }\n return l*pow(scale, -float(iterations))-C;", "A": -2.0, "B": 1.25, "C": 0.15, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "Nameless", "OriginalCode": "float de(vec3 p0){\n vec4 p = vec4(p0, 1.);\n p.xyz=abs(p.xyz);\n if(p.x < p.z)p.xz = p.zx;\n if(p.z < p.y)p.zy = p.yz;\n if(p.y < p.x)p.yx = p.xy;\n for(int i = 0; i < 8; i++){\n p.xyz = abs(p.xyz);\n uint seed = uint(p.x+p.y+p.z);\n p*=(2./clamp(dot(p.xyz,p.xyz),0.,1.));\n p.xyz-=vec3(.6,.9,2.2);\n }\n float m = 1.0;\n p.xyz-=clamp(p.xyz,-m,m);\n }", "ConvertedCode": "// author: Nameless\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: 2.0\n// B: 0.0\n// C: 1.0\n// Offset: (0.6,0.9,2.2)\n\n float4 p_iter = float4(p, 1.0);\n p_iter.xyz=abs(p_iter.xyz);\n if(p_iter.x < p_iter.z)p_iter.xz = p_iter.zx;\n if(p_iter.z < p_iter.y)p_iter.zy = p_iter.yz;\n if(p_iter.y < p_iter.x)p_iter.yx = p_iter.xy;\n for(int i = 0; i < 8; i++){\n p_iter.xyz = abs(p_iter.xyz);\n uint seed = uint(p_iter.x+p_iter.y+p_iter.z);\n p_iter=mul(p_iter,(A/clamp(dot(p_iter.xyz,p_iter.xyz),B,1.0)));\n p_iter.xyz-=Offset;\n }\n float m = C;\n p_iter.xyz-=clamp(p_iter.xyz,-m,m);", "A": 2.0, "B": 0.0, "C": 1.0, "OffsetX": 0.6, "OffsetY": 0.9, "OffsetZ": 2.2 }, { "Author": "butadiene", "OriginalCode": "float pi = acos(-1.);\nmat2 rot(float r){\n vec2 s = vec2(cos(r),sin(r));\n return mat2(s.x,s.y,-s.y,s.x);\n}\nfloat cube(vec3 p,vec3 s){\n vec3 q = abs(p);\n vec3 m = max(s-q,0.);\n return length(max(q-s,0.))-min(min(m.x,m.y),m.z);\n}\nfloat tet(vec3 p,vec3 offset,float scale){\n vec4 z = vec4(p,1.);\n for(int i = 0;i<12;i++){\n if(z.x+z.y<0.0)z.xy = -z.yx;\n if(z.x+z.z<0.0)z.xz = -z.zx;\n if(z.z+z.y<0.0)z.zy = -z.yz;\n z *= scale;\n z.xyz += offset*(1.0-scale);\n }\n return (cube(z.xyz,vec3(1.5)))/z.w;\n}\nfloat de(vec3 p){\n p.xy *= rot(pi);\n\n float np = 2.*pi/24.;\n float r = atan(p.x,p.z)-0.5*np;\n r = mod(r,np)-0.5*np;\n p.xz = length(p.xz)*vec2(cos(r),sin(r));\n\n p.x -= 5.1;\n p.xy *= rot(0.3);\n p.xz *= rot(0.25*pi);\n\n p.yz *= rot(pi*0.5);\n float s =1.;\n p.z = abs(p.z)-3.;\n p = abs(p)-s*8.;\n p = abs(p)-s*4.;\n p = abs(p)-s*2.;\n p = abs(p)-s*1.;\n vec3 col = vec3(0.082,0.647,0.894);\n return tet(p,vec3(1),1.8);\n}", "ConvertedCode": "// author: butadiene\n// Converted from GLSL to HLSL.\n// Default parameter values from original code:\n// A: N/A\n// B: N/A\n// C: N/A\n// Offset: N/A\nfloat pi = acos(-1.0);\nfloat cube(float3 p,float3 s){\n float3 q = abs(p);\n float3 m = max(s-q,0.0);\n return length(max(q-s,0.0))-min(min(m.x,m.y),m.z);\n}\nfloat tet(float3 p,float3 offset_val,float scale_val){\n float4 z = float4(p,1.0);\n for(int i = 0;i<12;i++){\n if(z.x+z.y<0.0)z.xy = -z.yx;\n if(z.x+z.z<0.0)z.xz = -z.zx;\n if(z.z+z.y<0.0)z.zy = -z.yz;\n z = mul(z, scale_val);\n z.xyz += offset_val*(1.0-scale_val);\n }\n return (cube(z.xyz,float3(1.5)))/z.w;\n}\n\n float3 p_iter = p;\n p_iter.xy = mul(p_iter.xy, float2x2(cos(pi),sin(pi),-sin(pi),cos(pi)));\n\n float np = 2.0*pi/24.0;\n float r = atan2(p_iter.x,p_iter.z)-0.5*np;\n r = fmod(r,np)-0.5*np;\n p_iter.xz = length(p_iter.xz)*float2(cos(r),sin(r));\n\n p_iter.x -= 5.1;\n p_iter.xy = mul(p_iter.xy, float2x2(cos(0.3),sin(0.3),-sin(0.3),cos(0.3)));\n p_iter.xz = mul(p_iter.xz, float2x2(cos(0.25*pi),sin(0.25*pi),-sin(0.25*pi),cos(0.25*pi)));\n\n p_iter.yz = mul(p_iter.yz, float2x2(cos(pi*0.5),sin(pi*0.5),-sin(pi*0.5),cos(pi*0.5)));\n float s =1.0;\n p_iter.z = abs(p_iter.z)-3.0;\n p_iter = abs(p_iter)-s*8.0;\n p_iter = abs(p_iter)-s*4.0;\n p_iter = abs(p_iter)-s*2.0;\n p_iter = abs(p_iter)-s*1.0;\n float3 col = float3(0.082,0.647,0.894);\n return tet(p_iter,float3(1),1.8);", "A": 0.0, "B": 0.0, "C": 0.0, "OffsetX": 0.0, "OffsetY": 0.0, "OffsetZ": 0.0 }, { "Author": "gaziya5 aka gaz", "OriginalCode": "float de(vec3 p){\n p.y+=1.4;\n //p.xz*=rotate2D(t*.5+.5);\n for(int j=0;++j<9;)\n p=abs(p),\n p.xy*=rotate2D(-9.78),\n p.x