← Back to Gallery

Loading 3D viewer…

Manta ray over reef (guided, sonnet-5-5)

by Jorge Barbero

Dimensions
64×36×64
Blocks
11,982
Compute Time
2.4s
Generation Time
10.3s
Edits
1
Model
claude-sonnet-5-5
Created
October 5, 2026
autoevalguidedmanta
Prompt

User Prompt

a giant manta ray gliding over a coral reef: wide diamond wing-body with cephalic fins, long tail, dark top with white belly, coral heads and kelp below

Photos

Exterior
Exteriorexterior
Top
Topexterior
CraftScript Source
// === BUILD PLAN ===
// Style: organic creature + reef diorama. Giant manta ray gliding above coral reef.
// Footprint: wingspan 44 (x10..54), body z6..58 incl. tail, floats y18..25 above reef y0..10
// TOP VIEW (planform): head z10 (cephalic fins z6..10), widest z22 (hw 22), trailing taper to z36, tail to z58
// SIDE: thick central body (5), wing tips curl UP ~3, belly flat white
// Materials: top gray/black/blue-terracotta mix + white shoulder chevrons; belly white w/ black gill slits+spots; reef coral blocks + sand
// === END PLAN ===
var cx = 32, zf = 10, zm = 22, zb = 36;
function hh(x, y, z) { var s = Math.sin(x * 12.9898 + y * 37.7 + z * 78.233) * 43758.5453; return s - Math.floor(s); }
var topP = palette([{block:"gray_concrete",weight:62},{block:"blue_terracotta",weight:20},{block:"black_concrete",weight:10},{block:"gray_terracotta",weight:8}]);
var bellyP = palette([{block:"white_concrete",weight:80},{block:"light_gray_concrete",weight:12},{block:"white_terracotta",weight:8}]);
var sandP = palette([{block:"sand",weight:62},{block:"gravel",weight:18},{block:"smooth_sandstone",weight:12},{block:"light_gray_terracotta",weight:8}]);
fill(0, 0, 0, 63, 1, 63, sandP);
function hw(z) {
  if (z < zf) { return -1; }
  var w;
  if (z <= zm) { var u = (z - zf) / (zm - zf); w = 22 * Math.pow(u, 0.55); }
  else if (z <= zb) { var v = (z - zm) / (zb - zm); w = 22 * Math.pow(1 - v, 0.95); }
  else { return -1; }
  return Math.max(w, (z < zf + 5) ? 7 : 0);
}
var x, y, z;
for (z = zf; z <= zb; z++) {
  var W = hw(z);
  if (W < 1) { continue; }
  for (x = Math.floor(cx - W); x <= Math.ceil(cx + W); x++) {
    var dx = Math.abs(x - cx);
    if (dx > W) { continue; }
    var f = dx / W;
    var n = 1 - f;
    var bodyZ = Math.exp(-Math.pow((z - 19) / 11, 2));
    var thick = Math.max(1, Math.round(1 + 4.2 * Math.pow(n, 1.3) * bodyZ));
    var yb = 18 + Math.round(3.2 * Math.pow(f, 2.2));
    var yt = yb + thick - 1;
    for (y = yb; y <= yt; y++) {
      if (y === yb) { pb(x, y, z, bellyP); }
      else { pb(x, y, z, topP); }
    }
    // shoulder chevron markings (white)
    if (z >= 13 && z <= 19 && dx >= 3 && dx <= 9 && Math.abs(dx - (z - 9)) <= 1) { pb(x, yt, z, "white_concrete"); }
    if (z >= 13 && z <= 19 && dx >= 3 && dx <= 9 && Math.abs(dx - (z - 9) - 1) <= 0) { pb(x, yt, z, "white_concrete"); }
    // belly spots
    if (hh(x, 1, z) > 0.94 && n > 0.25) { pb(x, yb, z, "black_concrete"); }
  }
}
// cephalic fins (horn-like lobes at the front)
for (y = 0; y <= 2; y++) { for (z = 3; z <= 10; z++) { pb(cx - 5 + (z > 8 ? 1 : 0), 19 + y, z, "gray_concrete"); pb(cx + 5 - (z > 8 ? 1 : 0), 19 + y, z, "gray_concrete"); } }
pb(cx - 5, 19, 5, "air"); pb(cx + 5, 19, 5, "air");
for (z = 3; z <= 6; z++) { pb(cx - 5, 20, z, "black_concrete"); pb(cx + 5, 20, z, "black_concrete"); }
// eyes, mouth, gills
pb(cx - 8, 21, 13, "black_concrete"); pb(cx + 8, 21, 13, "black_concrete"); pb(cx - 8, 22, 13, "white_concrete"); pb(cx + 8, 22, 13, "white_concrete");
for (x = cx - 3; x <= cx + 3; x++) { pb(x, 18, 11, "black_concrete"); pb(x, 18, 12, "black_concrete"); }
var gz;
for (gz = 14; gz <= 20; gz += 2) { for (x = 3; x <= 7; x++) { pb(cx - x, 18, gz, "gray_concrete"); pb(cx + x, 18, gz, "gray_concrete"); } }
// tail
var ty;
for (z = zb - 2; z <= 58; z++) {
  ty = 19 - Math.floor((z - zb) / 6);
  pb(cx, ty, z, (z > 52) ? "white_concrete" : "black_concrete");
  if (z < zb + 8) { pb(cx, ty + 1, z, "gray_concrete"); }
  if (z < zb + 3) { pb(cx - 1, ty, z, "gray_concrete"); pb(cx + 1, ty, z, "gray_concrete"); }
}
// === REEF ===
var coralTypes = ["brain_coral_block", "tube_coral_block", "bubble_coral_block", "fire_coral_block", "horn_coral_block"];
var ci, cxs, czs, cr, ch, ct, dxx, dzz, dyy;
for (ci = 0; ci < 22; ci++) {
  cxs = 3 + Math.floor(hh(ci, 3, 7) * 58); czs = 3 + Math.floor(hh(ci, 9, 2) * 58);
  cr = 2 + Math.floor(hh(ci, 5, 5) * 3); ch = 3 + Math.floor(hh(ci, 8, 1) * 7);
  ct = Math.floor(hh(ci, 2, 2) * 5);
  for (dxx = -cr; dxx <= cr; dxx++) { for (dzz = -cr; dzz <= cr; dzz++) {
    var dd = Math.sqrt(dxx * dxx + dzz * dzz);
    if (dd > cr) { continue; }
    var hgt = Math.max(1, Math.round(ch * (1 - dd / (cr + 0.5)) + (hh(cxs + dxx, 4, czs + dzz) - 0.5) * 2));
    for (dyy = 0; dyy < hgt; dyy++) {
      var cb = coralTypes[(ct + ((hh(cxs + dxx, dyy, czs + dzz) > 0.82) ? 1 : 0)) % 5];
      pb(cxs + dxx, 2 + dyy, czs + dzz, cb);
    }
  } }
}
// kelp strands
var k, kh;
for (k = 0; k < 30; k++) {
  var kx = 2 + Math.floor(hh(k, 11, 1) * 60), kz = 2 + Math.floor(hh(k, 12, 4) * 60);
  kh = 6 + Math.floor(hh(k, 13, 3) * 10);
  for (y = 2; y < 2 + kh; y++) { pb(kx + ((y % 4 === 0) ? 1 : 0), y, kz, (y % 3 === 0) ? "lime_stained_glass_pane" : "green_stained_glass_pane"); }
}
// small fish
var fi;
for (fi = 0; fi < 9; fi++) { var fx = 6 + Math.floor(hh(fi, 21, 1) * 50), fy = 8 + Math.floor(hh(fi, 22, 2) * 8), fz = 40 + Math.floor(hh(fi, 23, 3) * 18); pb(fx, fy, fz, "orange_concrete"); pb(fx + 1, fy, fz, "white_concrete"); pb(fx - 1, fy + ((fi % 2) ? 1 : 0), fz, "orange_terracotta"); }

Static Renders

Manta ray over reef (guided, sonnet-5-5) isometric viewisometric
Manta ray over reef (guided, sonnet-5-5) front viewfront
Manta ray over reef (guided, sonnet-5-5) side viewside
Manta ray over reef (guided, sonnet-5-5) back viewback
Manta ray over reef (guided, sonnet-5-5) top viewtop