fogón

← BásicoObjeto 3Dfogon/camioneta-v4

Camioneta

de fogonCC016745 bloques
CamionetaArrastrá para girarlo
// «Camioneta» · gpt-6-sol (medium)
// Pickup truck («Camioneta»). One of several variations of this object: follow the reference picture closely.

const red = "#cf4033";
const redLight = "#ed5945";
const redDark = "#982d28";
const trim = "#283238";
const glass = "#193b48";

// Chassis and undercarriage
box(14, 5, 6, 34, 43, 9, "#343c40");
box(16, 7, 5, 32, 41, 6, "#626c6e");
box(13, 6, 9, 35, 42, 12, redDark);

// Four chunky tires, with inset steel hubs
for (const x of [10, 36]) {
  for (const cy of [13, 37]) {
    for (let dx = 0; dx < 4; dx++) {
      for (let dy = -6; dy <= 6; dy++) {
        for (let dz = -5; dz <= 5; dz++) {
          const d = (dy * dy) / 32 + (dz * dz) / 25;
          if (d > 1) continue;
          let c = d > 0.72 ? "#192126" : "#242b30";
          if (d > 0.72 && rand() < 0.16) c = "#30383b";
          set(x + dx, cy + dy, 5 + dz, c);
        }
      }
    }
    const face = x === 10 ? 9 : 40;
    for (let dy = -3; dy <= 3; dy++) {
      for (let dz = -3; dz <= 3; dz++) {
        const d = dy * dy + dz * dz;
        if (d <= 10) set(face, cy + dy, 5 + dz, d > 5 ? "#536064" : "#899497");
      }
    }
    box(face, cy - 1, 4, face, cy + 1, 6, "#5b686c");
    set(face, cy, 5, "#adb4b2");
  }
}

// Long red body and hood
box(13, 5, 10, 35, 18, 14, red);
box(14, 6, 15, 34, 18, 16, redLight);
box(13, 7, 14, 13, 17, 15, redDark);
box(35, 7, 14, 35, 17, 15, "#b4342b");
box(14, 6, 16, 34, 7, 16, "#fa654d");
box(13, 17, 13, 35, 19, 15, redDark);

// Raised seams on the hood
box(17, 9, 17, 18, 17, 17, "#da4938");
box(19, 9, 17, 19, 16, 17, "#a9342b");
box(29, 9, 17, 30, 17, 17, "#da4938");
box(31, 9, 17, 31, 16, 17, "#a9342b");

// Front grille, upright corner headlights, and bumper
box(17, 4, 9, 31, 5, 13, "#263038");
for (let z = 10; z <= 12; z += 2) {
  box(18, 3, z, 30, 3, z, "#627074");
}
for (const x of [13, 33]) {
  box(x, 4, 9, x + 2, 5, 14, "#444e50");
  box(x, 3, 10, x + 2, 3, 13, "#e8d5a4");
  box(x, 3, 12, x + 2, 3, 12, "#fff0be");
}
box(12, 3, 6, 36, 5, 7, "#929d9a");
box(15, 2, 7, 33, 3, 7, "#6b7778");
box(12, 4, 7, 14, 5, 9, "#c1c3ae");
box(34, 4, 7, 36, 5, 9, "#c1c3ae");

// Cab: red pillars enclosing a broad dark windshield
box(13, 19, 15, 35, 30, 25, redDark);
box(15, 20, 17, 33, 29, 25, "#263f47");
box(15, 18, 18, 33, 19, 24, glass);
box(16, 17, 22, 22, 17, 23, "#386474");
box(26, 17, 21, 31, 17, 23, "#315968");
box(13, 18, 17, 15, 20, 25, red);
box(33, 18, 17, 35, 20, 25, red);
box(23, 17, 18, 24, 19, 25, "#34464a");
box(14, 17, 17, 34, 18, 18, "#3c494b");

// Side windows and door, visible on both sides
for (const x of [12, 36]) {
  box(x, 20, 18, x, 29, 24, "#173a47");
  box(x, 21, 22, x, 24, 23, "#356273");
  box(x, 27, 20, x, 28, 22, "#315563");
  box(x, 20, 17, x, 29, 18, "#586164");
  box(x, 25, 18, x, 26, 25, "#a6332b");
  box(x, 19, 18, x, 20, 25, red);
  box(x, 29, 18, x, 30, 25, redDark);
  box(x, 19, 12, x, 30, 16, red);
  box(x, 21, 12, x, 21, 15, redDark);
  box(x, 29, 12, x, 29, 16, redDark);
  box(x, 26, 16, x, 28, 16, "#87918b");
}

// Projecting side mirrors
box(8, 19, 19, 12, 20, 21, "#424d50");
box(8, 18, 20, 10, 20, 23, "#29363b");
box(37, 19, 19, 40, 20, 21, "#424d50");
box(39, 18, 19, 41, 21, 22, "#39474a");
box(41, 19, 20, 41, 20, 21, "#a2aaaa");

// Flat, slightly overhanging red roof
box(12, 17, 25, 36, 31, 26, redDark);
box(13, 18, 27, 35, 30, 27, redLight);
box(15, 19, 28, 33, 28, 28, "#e94f3f");
box(14, 29, 27, 35, 30, 27, "#a52f29");
box(12, 17, 25, 36, 18, 25, "#f15c47");

// Pickup bed: recessed dark floor and thick red rails
box(13, 30, 10, 35, 43, 12, redDark);
box(15, 32, 13, 33, 41, 13, "#593b33");
box(13, 30, 13, 15, 43, 17, red);
box(33, 30, 13, 35, 43, 17, red);
box(14, 42, 12, 34, 44, 17, "#b7352d");
box(15, 42, 17, 33, 43, 17, redLight);
box(13, 30, 17, 15, 42, 18, "#ec5341");
box(33, 30, 17, 35, 42, 18, "#e34a39");
box(13, 31, 14, 13, 41, 16, "#a52f28");
box(35, 31, 14, 35, 41, 16, "#a42e27");
box(16, 31, 13, 32, 31, 18, "#9c3029");

// Wooden cargo crate peeking over the bed
box(18, 33, 14, 31, 40, 21, "#b98246");
box(18, 33, 21, 31, 40, 22, "#e7ad61");
for (const x of [19, 23, 27, 31]) {
  box(x, 33, 15, x, 40, 21, "#d69b55");
  box(x, 34, 22, x, 39, 22, "#f0bd72");
}
box(18, 33, 17, 31, 33, 18, "#e2a65c");
box(18, 40, 17, 31, 40, 18, "#9c6938");
box(18, 33, 21, 31, 33, 21, "#f5c47b");

// Dark wheel arches, side sill, and small rear details
for (const cy of [13, 37]) {
  for (const x of [12, 36]) {
    for (let dy = -7; dy <= 7; dy++) {
      for (let z = 8; z <= 12; z++) {
        const d = (dy * dy) / 45 + ((z - 5) * (z - 5)) / 39;
        if (d > 0.82 && d < 1.3) set(x, cy + dy, z, "#283137");
      }
    }
  }
}
box(36, 20, 9, 37, 30, 10, "#697578");
box(12, 20, 9, 13, 30, 10, "#697578");
box(15, 43, 8, 33, 44, 9, "#8e9997");
box(14, 44, 11, 16, 44, 14, "#c67354");
box(32, 44, 11, 34, 44, 14, "#c67354");