{
 "id": "vehicle.rotor.attack-helicopter/apache-helicopter",
 "version": 1,
 "name": " AH-64 Apache style attack helicopter: tandem stepped cockpit, chin 30 mm chain gun turret, stub wings with rocket pods and missile racks, four-blade main rotor with mast-top radar dome, tailwheel landing gear (the one on sheet.jpg)",
 "title": "Apache-style attack helicopter",
 "slug": "apache-helicopter",
 "refs": [
  "sheet.jpg"
 ],
 "size": "17.7 m long with rotors turning (fuselage 15.5 m), main rotor 14.6 m diameter, 3.87 m high",
 "tris": "60k to 140k",
 "mats": 8,
 "effort": "medium",
 "frame": "Nose toward +Z, up = +Y, +X = the aircraft's LEFT side, centred on X = 0; origin (0,0,0) on the ground plane directly below the main rotor mast (the front rotor mast for a tandem), wheels or skids resting on y = 0.",
 "nodes": "GAME WEIGHT overrides the budget above: every texture image at most 1024 px, ORM / occlusion maps at most 512 px; share baked texture sets between parts and use tiling materials + trim textures on big surfaces (a 1024 bake cannot hold a 40 m fuselage). Separate named mesh nodes: Fuselage (everything fixed), MainRotor (hub + blades, origin ON the mast axis at the hub, spins about Y; for a tandem: Rotor_Front and Rotor_Rear, no tail rotor), TailRotor (origin at its hub, spins about its shaft; write the axis in nodes.json), Door_L, Door_R where doors open (origin on the hinge or slide line), Gun (chin or nose turret, origin at its pivot) where the type has one. Rotor blades are real twisted airfoils, not planks. Empty nodes: Seat_Pilot, Seat_Copilot (or Seat_Gunner), Troop_1..Troop_n (cabin seat hip points) for troop carriers, Hardpoint_L1, Hardpoint_R1... (pylon attach points), Light_Nav_L, Light_Nav_R, Light_Beacon, Exhaust_L, Exhaust_R. Cockpit glazing: material \"Glass\" (alpha BLEND) with a visible cockpit (seats, panels, sticks) behind it. Lamps: \"Lamps\". PAINT CONTRACT (how games get variants of one model): the main paint lives in ONE material named exactly \"Paint\". Its base colour TEXTURE holds only light neutral detail (near white, with grey grime, mud, dust, soot, rain streaks, panel lines, chipped edges baked in) and its baseColorFactor holds the paint colour; default factor = [0.10, 0.11, 0.08] (dark olive). A game changes that factor, so nothing else (rubber, metal, tracks, glass, lamps, weapons, interior) may use Paint. Matte military paint: no clearcoat. In nodes.json add \"paints\": six real paints for this model as linear RGB triples with names, the default first, chosen from: air-superiority light grey, dark grey, navy blue-grey, desert sand, olive, black, two-tone grey; and render paints.png: a 3x2 grid of the same 3/4 view in those six paints (EEVEE or low-sample Cycles) to prove the recolour works. No national insignia, roundels, flags, unit badges, serial numbers or any text: games give these to their own factions. No manufacturer logos. Keep this directory clean: put any helper tools you install (node_modules, vendored three.js, browser checks) under /tmp, never here. Pace: deliver a first complete GLB within about 25 minutes, then use what is left of about 45 minutes to improve what the renders show is weakest. Use Cycles with the GPU (OptiX/CUDA) and modest samples for bakes and renders. ",
 "family": "rotor"
}