fogón

← Antiguo y prehistoriaObjeto 3Dfogon/estatua-de-anubis

Estatua de Anubis

de fogonCC012496 bloques
Estatua de AnubisArrastrá para girarlo
// «Estatua de Anubis» · gpt-6-sol (medium)
// A standing statue of Anubis: a black jackal-headed figure with tall pointed ears and gold accents (collar, armbands, kilt edge), holding a gold staff, on a rectangular sandstone pedestal with hieroglyphs on the front.

const stone = "#cda66b", stoneLight = "#e8c68d", stoneDark = "#a77d4e";
const black = "#20242e", blackLight = "#343b48", blackDark = "#141923";
const gold = "#f4ca56", goldLight = "#ffe28a", goldDark = "#b9872d";
const turquoise = "#39c9bf", lapis = "#285595";

// Stepped sandstone pedestal.
box(7, 10, 0, 40, 38, 2, stoneDark);
box(8, 11, 1, 39, 37, 2, stone);
box(9, 12, 3, 38, 36, 7, stone);
box(8, 11, 8, 39, 37, 8, stoneLight);

forEach((x, y, z, color) => {
  if (z > 8 || rand() > 0.14) return;
  if (color === stone) set(x, y, z, rand() < 0.65 ? stoneLight : stoneDark);
});
box(9, 12, 7, 38, 12, 7, stoneLight);
box(8, 11, 8, 39, 11, 8, goldDark);

// Large, simple hieroglyphs on the front face.
const glyphY = 11;
const glyph = (x, z, c = lapis) => set(x, glyphY, z, c);
// Sun and bird.
for (const [x, z] of [[13, 6], [14, 7], [15, 6], [14, 5]]) glyph(x, z, gold);
glyph(14, 6, goldLight);
for (const [x, z] of [[12, 4], [13, 4], [14, 4], [15, 4], [15, 5], [16, 5]]) glyph(x, z);
glyph(12, 5, goldDark);
// Ankh.
for (const [x, z] of [[20, 7], [21, 7], [19, 6], [22, 6], [20, 5], [21, 5],
                       [18, 5], [19, 5], [22, 5], [23, 5], [20, 4], [21, 4], [20, 3], [21, 3]]) glyph(x, z, goldDark);
// Eye and reeds.
for (const [x, z] of [[26, 5], [27, 6], [28, 6], [29, 6], [30, 5],
                       [27, 4], [28, 4], [29, 4]]) glyph(x, z);
glyph(28, 5, turquoise);
for (const x of [33, 35]) {
  for (let z = 4; z <= 7; z++) glyph(x, z, goldDark);
  glyph(x - 1, 7, turquoise);
}
for (let x = 32; x <= 36; x++) glyph(x, 3, lapis);

// Broad jackal feet and upright legs.
box(18, 17, 9, 22, 27, 11, blackDark);
box(26, 17, 9, 30, 27, 11, blackDark);
box(18, 13, 9, 22, 24, 10, black);
box(26, 13, 9, 30, 24, 10, black);
box(19, 19, 12, 22, 26, 23, black);
box(26, 19, 12, 29, 26, 23, black);
box(19, 18, 13, 22, 19, 20, blackLight);
box(26, 18, 13, 29, 19, 20, blackLight);
box(18, 13, 9, 22, 13, 9, blackLight);
box(26, 13, 9, 30, 13, 9, blackLight);
for (const x of [19, 21, 27, 29]) set(x, 12, 9, goldDark);

// Chunky torso with subtly highlighted shoulders.
ellipsoid(24, 23, 28, 8, 6, 7, black);
box(19, 18, 29, 29, 18, 32, blackLight);
box(21, 18, 33, 27, 23, 35, blackDark);

// Arms, one hand wrapped around the staff.
line(17, 23, 32, 15, 21, 24, 2, black);
line(31, 23, 32, 33, 20, 25, 2, black);
box(13, 19, 25, 17, 23, 26, goldDark);
box(14, 19, 26, 17, 22, 26, gold);
box(31, 18, 25, 35, 22, 26, goldDark);
box(32, 18, 26, 35, 21, 26, gold);
ellipsoid(15, 20, 22, 2, 2, 3, black);
line(33, 19, 24, 36, 16, 23, 2, black);
box(34, 15, 22, 37, 18, 24, blackLight);

// White linen kilt, with a broad gold hem and blue hanging panel.
box(17, 17, 21, 31, 28, 25, "#e9d9b4");
box(18, 17, 20, 30, 27, 21, "#f4e6c4");
box(18, 17, 20, 30, 17, 20, gold);
box(17, 17, 24, 31, 28, 25, goldDark);
box(18, 16, 23, 30, 16, 24, gold);
box(22, 15, 20, 26, 15, 24, lapis);
box(23, 14, 21, 25, 14, 24, turquoise);
box(22, 14, 20, 26, 14, 20, goldLight);
for (const x of [19, 29]) box(x, 16, 21, x, 16, 23, goldDark);

// Layered ceremonial collar: broad, bright stripes visible from the front.
box(18, 16, 31, 30, 18, 33, goldDark);
box(19, 15, 32, 29, 16, 33, gold);
box(20, 14, 31, 28, 15, 31, turquoise);
box(21, 14, 30, 27, 15, 30, lapis);
box(22, 15, 29, 26, 15, 29, goldLight);
for (const x of [19, 21, 23, 25, 27, 29]) set(x, 14, 32, turquoise);

// Jackal head, long forward muzzle and upright pointed ears.
ellipsoid(24, 21, 37, 6, 5, 4, black);
box(19, 16, 35, 29, 19, 39, blackLight);
box(20, 12, 35, 28, 18, 37, black);
box(21, 10, 35, 27, 14, 36, blackLight);
box(22, 9, 35, 26, 10, 36, blackDark);
box(23, 8, 35, 25, 9, 36, goldDark);
box(21, 11, 34, 27, 15, 34, blackDark);
box(19, 16, 34, 20, 19, 36, goldDark);
box(28, 16, 34, 29, 19, 36, goldDark);

// Friendly, bold eyes and a tiny glint.
for (const x of [21, 27]) {
  box(x - 1, 15, 37, x + 1, 15, 38, gold);
  set(x, 14, 38, turquoise);
  set(x, 13, 38, blackDark);
  set(x, 13, 39, "#ffffff");
}
box(22, 10, 34, 26, 11, 34, goldDark);

// Tall tapered ears, with warm inner surfaces.
for (const cx of [19, 29]) {
  box(cx - 2, 19, 39, cx + 2, 24, 41, black);
  box(cx - 1, 20, 42, cx + 1, 23, 43, black);
  box(cx, 21, 44, cx, 23, 45, blackDark);
  box(cx - 1, 18, 40, cx + 1, 18, 41, goldDark);
  box(cx, 19, 42, cx, 19, 43, "#b56d56");
}

// Straight gold staff and a clear loop-and-gem finial.
box(36, 16, 9, 37, 17, 37, goldDark);
box(36, 15, 10, 36, 15, 36, goldLight);
for (const z of [11, 20, 29, 35]) box(35, 15, z, 38, 18, z, gold);
for (let i = 0; i < 16; i++) {
  const a = i * Math.PI / 8;
  const x = Math.round(36 + 3 * Math.cos(a));
  const z = Math.round(39 + 3 * Math.sin(a));
  box(x, 16, z, x, 17, z, gold);
}
box(36, 15, 38, 36, 15, 40, turquoise);
set(36, 14, 39, "#a5fff0");
set(36, 16, 43, goldLight);