{
 "id": "vehicle.service.ambulance/ambulance-van",
 "version": 1,
 "name": "modern european box-body emergency ambulance built on a heavy van chassis (french samu / smur style): aerodynamic van cab in front, wide rectangular medical box body in the rear with integrated corner emergency strobe lamps, roof-mounted aerodynamic blue/red led lightbar over the cab, high-visibility blue and yellow/red reflective stripes, generic 'ambulance' lettering on the front hood and sides, twin rear doors with frosted upper windows, and side equipment locker doors (the one on sheet.jpg)",
 "title": "Ambulance Van",
 "slug": "ambulance-van",
 "refs": [
  "sheet.jpg",
  "trellis.preview.png",
  "trellis.glb",
  "trellis_info.json"
 ],
 "size": "6.40 m long, 2.20 m wide, 2.85 m high, wheelbase 3.95 m",
 "tris": "55k to 100k",
 "mats": 8,
 "effort": "medium",
 "frame": "Front toward +Z, up = +Y, +X = the vehicle's LEFT side, centred on X = 0; origin (0,0,0) on the ground plane midway between the front and rearmost axles (Forge Garage contract v2). Tyres touch y = 0.",
 "nodes": "GAME WEIGHT overrides the budget above: every texture image at most 1024 px, ORM / occlusion maps at most 512 px, share one baked texture set between parts where you can. Final packed GLB must be <= 1.5 MB (<= 2.0 MB for trucks). Separate named mesh nodes: Body (cab + medical box body), Lightbar (roof emergency lightbar as its own separate mesh node, origin at its centre, lamps in emissive 'Lamps' material), Wheel_FL, Wheel_FR, Wheel_RL, Wheel_RR (origin at exact wheel hub centre), SteeringWheel (origin at its hub), Door_FL, Door_FR (front cab doors, origin at front hinge), Door_Rear_L, Door_Rear_R (rear ambulance box doors, origin at outer vertical hinges). Empty nodes (no mesh): Seat_Driver, Door_L, Door_R, Exhaust, Light_Head_L, Light_Head_R, Light_Tail_L, Light_Tail_R. Cab interior visible through front Glass. Windows: one material named \"Glass\" (alpha BLEND, tinted, low roughness, real thickness not needed). Lamps: one material named \"Lamps\" with emissive (headlights warm white, tail and brake lights red, indicators amber, roof lightbars / taxi signs emissive; emission strength modest, games raise it). PAINT CONTRACT (this is how games get colour variants of one model): the base body colour lives in ONE material named exactly \"Paint\". Its base colour TEXTURE holds only light neutral detail (near white, with subtle grey grime, panel seams, dust and wear baked in) and its baseColorFactor holds the paint colour; default factor = [0.88, 0.89, 0.91] (ambulance white) (never [1,1,1]). A game recolours the vehicle by changing that factor, so nothing else (rubber, chrome, glass, lights, interior, baked livery stripes/decals) may use the Paint material. For liveried service vehicles, put livery stripes/chevrons/markings on a separate \"Livery\" material (or non-Paint material) and use \"Paint\" for the recolourable base body panels. Give Paint a clearcoat (KHR_materials_clearcoat 1.0, roughness about 0.05) if it is glossy paint. Bake the emergency reflective stripes and generic 'AMBULANCE' lettering onto a separate 'Livery' material so 'Paint' recolours the main body (white, high-vis euro yellow, etc.). In nodes.json add \"paints\": six good-looking real paint colours for this model as linear RGB triples (the default first), and render paints.png: a 3x2 grid of the same 3/4 view in those six paints (EEVEE or low-sample Cycles is fine) to prove the recolour works. REFERENCE & TRELLIS.2 STARTING MESH: In this directory you have sheet.jpg (the turnaround design sheet), trellis.preview.png (render of the TRELLIS.2 3D shape reference), and trellis.glb (the TRELLIS.2 3D mesh). Do NOT call view_file on trellis.glb (it is a binary GLB; view sheet.jpg and trellis.preview.png with view_file). You may inspect or import trellis.glb in Blender on gex44 as a 3D shape/proportion guide or starting shell, but a raw TRELLIS blob mesh with fused wheels is NOT acceptable: wheels MUST be separate clean cylindrical meshes that spin smoothly without wobble, glass and body panels must be crisp, and all Garage v2 nodes and pivots must be exact. Keep this directory clean: never create node_modules here. Pace: deliver a first complete GLB within about 20 minutes, then refine if needed. Use Cycles with the GPU (OptiX/CUDA) and modest samples for bakes and renders. ",
 "family": "wheeled",
 "pen": "gemini4",
 "status": "approved",
 "tags": [
  "ambulance",
  "ambulance-van",
  "emergency",
  "paramedic",
  "service",
  "vehicle",
  "samu"
 ],
 "aliases": [
  "ambulance",
  "ambulance van",
  "emergency ambulance",
  "paramedic van",
  "samu",
  "vehicule de secours"
 ]
}