{
  "name": "Living Golden Mandelbulb",
  "dimension": "3d",
  "slot": "action_bar",
  "width": 256,
  "height": 128,
  "textBaseline": 128,
  "placement": {
    "x": 0,
    "y": 0
  },
  "shapes": [],
  "texts": [],
  "heads": [],
  "images": [],
  "bars": [],
  "triggers": [],
  "world": {
    "glsl": "vec2 bulb(vec3 p, float time) {\n    vec3 c = p / 0.69;\n    vec3 z = c;\n    float dr = 1.0;\n    float r = 0.0;\n    float trap = 1.0;\n    float morph = 0.13 * sin(time * 0.24);\n    for (int j = 0; j < 6; j++) {\n        r = length(z);\n        trap = min(trap,r);\n        if (r > 2.6) break;\n        float rr = max(r,0.0001);\n        float th = acos(clamp(z.z/rr,-1.0,1.0))*8.0 + morph;\n        float ph = atan(z.y,z.x)*8.0;\n        float r2 = rr*rr;\n        float r4 = r2*r2;\n        float r8 = r4*r4;\n        dr = 8.0*(r8/rr)*dr + 1.0;\n        z = r8*vec3(sin(th)*cos(ph),sin(th)*sin(ph),cos(th)) + c;\n    }\n    return vec2(0.345*log(max(r,0.0001))*r/dr,trap);\n}\nvec3 pose(vec3 p,float time) {\n    p.xz = rpw_rot(time*0.055)*p.xz;\n    p.yz = rpw_rot(0.24)*p.yz;\n    return p;\n}\nfloat field(vec3 p,float time) { return bulb(pose(p,time),time).x; }\nvec4 object(vec3 ro, vec3 rd, float t0, float t1, float time, vec3 light, inout float depth) {\n    float t = t0;\n    bool hit = false;\n    for (int i = 0; i < 64; i++) {\n        float d = field(ro+rd*t,time);\n        if (d < 0.0014) { hit = true; break; }\n        t += max(d*0.9,0.0008);\n        if (t > t1) break;\n    }\n    if (!hit) return vec4(0.0);\n    depth = t;\n    vec3 p = ro+rd*t;\n    vec2 e = vec2(0.0018,-0.0018);\n    vec3 n = normalize(e.xyy*field(p+e.xyy,time)+e.yyx*field(p+e.yyx,time)+e.yxy*field(p+e.yxy,time)+e.xxx*field(p+e.xxx,time));\n    float occ = 0.0;\n    float w = 1.0;\n    for (int i = 0; i < 3; i++) {\n        float h = 0.012+0.032*float(i);\n        occ += max(0.0,h-field(p+n*h,time))/h*w;\n        w *= 0.6;\n    }\n    float ao = clamp(1.0-occ*0.62,0.06,1.0);\n    vec3 l = normalize(vec3(-0.4,0.8,0.6));\n    float sh = 1.0;\n    float st = 0.016;\n    for (int i = 0; i < 6; i++) {\n        float d = field(p+n*0.005+l*st,time);\n        sh = min(sh,10.0*max(d,0.0)/st);\n        st += clamp(d,0.025,0.10);\n    }\n    float dif = max(dot(n,l),0.0)*clamp(sh,0.0,1.0);\n    float spec = pow(max(dot(n,normalize(l-rd)),0.0),25.0)*sh;\n    vec3 gold = vec3(1.0,0.61,0.13);\n    vec3 sky = rpw_sky(reflect(rd,n));\n    vec3 col = gold*(0.36*ao + 1.2*dif*sqrt(ao)) + sky*gold*0.48*ao + vec3(1.0,0.85,0.47)*spec*0.85;\n    col *= light;\n    float fold = pow(1.0-ao,2.0);\n    col += vec3(1.0,0.39,0.055)*fold*0.19*(0.85+0.15*sin(time*0.65+length(p)*16.0));\n    return vec4(col,1.0);\n}",
    "prompt": "a slowly morphing golden Mandelbulb fractal with deep shadowed crevices and a soft glow in the folds",
    "size": 5,
    "summary": "A slowly rotating, gently morphing golden Mandelbulb with intricate recursive folds, deep shadowed crevices, and a soft amber glow within its recesses."
  }
}