{
 "id": "vehicle.space.saucer/alien-saucer",
 "version": 2,
 "name": "Alien flying saucer",
 "summary": "Original 28 m × 8.5 m flying saucer: double-convex hull, raised bridge dome, inset rim lights, pivoted Ring, belly lens, three closed landing pods.",
 "tags": [
  "alien",
  "classic",
  "flying",
  "saucer",
  "sci-fi",
  "space",
  "ufo",
  "vehicle"
 ],
 "style": "realistic",
 "status": "approved",
 "frame": {
  "contract": "library/spacecraft-+Z-nose-+X-left-origin-centre",
  "up": "+Y",
  "unit": "m",
  "front": "+Z"
 },
 "size": {
  "measured_m": {
   "w": 28.0,
   "l": 28.0,
   "h": 8.5
  },
  "source": "measured",
  "scale_to_class": 1.0
 },
 "bounds": {
  "geometry": {
   "min": [
    -14.0,
    -3.9,
    -14.0
   ],
   "max": [
    14.0,
    4.6,
    14.0
   ]
  },
  "footprint": {
   "kind": "rect",
   "minX": -14.0,
   "maxX": 14.0,
   "minZ": -14.0,
   "maxZ": 14.0,
   "source": "measured"
  },
  "collider": {
   "parts": [
    {
     "type": "box",
     "x": 0.0,
     "y": 0.35,
     "z": 0.0,
     "hx": 14.0,
     "hy": 4.25,
     "hz": 14.0
    }
   ],
   "source": "guessed"
  }
 },
 "placement": {
  "role": null,
  "notes": null,
  "source": null
 },
 "sockets": [
  {
   "name": "light_beacon",
   "role": "light",
   "parent": null,
   "pos": [
    0.0,
    4.6,
    0.0
   ],
   "rot": null,
   "source": "authored"
  },
  {
   "name": "light_nav_l",
   "role": "light",
   "parent": null,
   "pos": [
    13.98,
    -0.43,
    0.0
   ],
   "rot": null,
   "source": "authored"
  },
  {
   "name": "light_nav_r",
   "role": "light",
   "parent": null,
   "pos": [
    -13.98,
    -0.43,
    0.0
   ],
   "rot": null,
   "source": "authored"
  },
  {
   "name": "seat_pilot",
   "role": "seat",
   "parent": null,
   "pos": [
    0.0,
    2.83,
    1.3
   ],
   "rot": null,
   "source": "authored"
  },
  {
   "name": "camera_chase",
   "role": "camera",
   "parent": null,
   "pos": [
    0,
    11,
    -23
   ],
   "rot": null,
   "source": "authored"
  },
  {
   "name": "thruster_1",
   "role": "thruster",
   "parent": null,
   "pos": [
    -1.718,
    -1.445,
    -10.316
   ],
   "rot": null,
   "source": "authored"
  },
  {
   "name": "thruster_2",
   "role": "thruster",
   "parent": null,
   "pos": [
    1.718,
    -1.445,
    -10.316
   ],
   "rot": null,
   "source": "authored"
  }
 ],
 "nodes": {
  "body": [
   "Hull"
  ],
  "thrusters": [
   "Thruster_1",
   "Thruster_2"
  ],
  "rings": [
   "Ring"
  ],
  "moving": {
   "Ring": {
    "kind": "spinner",
    "axis": [
     0.0,
     1.0,
     0.0
    ],
    "axis_source": "author"
   }
  },
  "axes": {
   "Ring": [
    0.0,
    1.0,
    0.0
   ]
  },
  "limits": {}
 },
 "paint": {
  "encoding": "material factor",
  "material": "Paint",
  "default": [
   0.55,
   0.57,
   0.6
  ],
  "paints": [
   [
    0.55,
    0.57,
    0.6
   ],
   [
    0.15,
    0.085,
    0.25
   ],
   [
    0.83,
    0.79,
    0.66
   ],
   [
    0.035,
    0.19,
    0.2
   ],
   [
    0.24,
    0.035,
    0.045
   ],
   [
    0.035,
    0.042,
    0.055
   ]
  ],
  "names": [
   "Silver",
   "Deep violet",
   "Bone white",
   "Abyssal teal",
   "Oxblood",
   "Obsidian"
  ],
  "colour_space": "linear",
  "how": "set the Paint material's color (linear RGB) to recolour; nothing else uses Paint"
 },
 "render": {
  "tris": 76758,
  "verts": 72498,
  "materials": 6,
  "draw_calls": 9,
  "textures": [
   {
    "px": [
     1024,
     1024
    ],
    "fmt": "ktx2"
   },
   {
    "px": [
     512,
     512
    ],
    "fmt": "ktx2"
   },
   {
    "px": [
     1024,
     1024
    ],
    "fmt": "ktx2"
   },
   {
    "px": [
     512,
     512
    ],
    "fmt": "ktx2"
   },
   {
    "px": [
     512,
     512
    ],
    "fmt": "ktx2"
   },
   {
    "px": [
     512,
     512
    ],
    "fmt": "ktx2"
   },
   {
    "px": [
     1024,
     1024
    ],
    "fmt": "ktx2"
   },
   {
    "px": [
     512,
     512
    ],
    "fmt": "ktx2"
   },
   {
    "px": [
     1024,
     1024
    ],
    "fmt": "ktx2"
   },
   {
    "px": [
     256,
     256
    ],
    "fmt": "ktx2"
   },
   {
    "px": [
     256,
     256
    ],
    "fmt": "ktx2"
   },
   {
    "px": [
     256,
     256
    ],
    "fmt": "ktx2"
   },
   {
    "px": [
     512,
     512
    ],
    "fmt": "ktx2"
   },
   {
    "px": [
     512,
     512
    ],
    "fmt": "ktx2"
   },
   {
    "px": [
     512,
     512
    ],
    "fmt": "ktx2"
   },
   {
    "px": [
     256,
     256
    ],
    "fmt": "ktx2"
   },
   {
    "px": [
     256,
     256
    ],
    "fmt": "ktx2"
   },
   {
    "px": [
     256,
     256
    ],
    "fmt": "ktx2"
   }
  ],
  "gpu_mb_decoded": 8.9,
  "bytes": 1034808,
  "codec": "draco",
  "extensions": [
   "KHR_draco_mesh_compression",
   "KHR_materials_clearcoat",
   "KHR_materials_emissive_strength",
   "KHR_materials_iridescence",
   "KHR_texture_basisu"
  ]
 },
 "rig": null,
 "animations": [],
 "gameplay": {
  "source": "measured",
  "length": 28.0,
  "beam": 28.0,
  "height": 8.5,
  "scale": "small-craft"
 },
 "techniques": [
  "baked-pbr",
  "draco",
  "paint-factor",
  "repaint-all-round",
  "textured"
 ],
 "provenance": {
  "author": "gpt-6-astra (Blender)",
  "source": "jobs/alien-saucer-v1",
  "kit": "library-author",
  "job": "alien-saucer-v1",
  "feedback": null,
  "imported": "2026-10-07",
  "file_origin": "~/forge-build/forge-assets/jobs/alien-saucer-v1/alien-saucer.glb",
  "method": "picture-to-Blender-and-paint",
  "models": [
   "gpt-6-astra (Blender)",
   "Nano Banana Pro concept sheet",
   "GPT Image 2 paint"
  ],
  "source_picture": "/home/claude-agent/forge-build/forge-assets/jobs/alien-saucer-v1/sheet.jpg",
  "date": "2026-10-16",
  "licence_evidence": "Forge Astra Blender job alien-saucer-v1 (Nano Banana Pro sheet, CC0 Poly Haven textures: blue_metal_plate)",
  "licence": "owned",
  "parent": {
   "id": "vehicle.space.saucer/alien-saucer",
   "version": 1,
   "release": "sha256:47cb00b8a0946d36be94f763965df57adce61ea3895524fbf0939cf7ac57c07b"
  },
  "variant": {
   "kind": "retexture",
   "note": "painted copy (GPT Image 2 + forge-repaint), same mesh"
  }
 },
 "licence": {
  "kind": "owned",
  "game_use": true,
  "raw_redistribute": false,
  "evidence": "Forge Astra Blender job alien-saucer-v1 (Nano Banana Pro sheet, CC0 Poly Haven textures: blue_metal_plate)"
 },
 "quality": {
  "gates": "pass: 9 MB of 24 MB texture budget, 76758 tris",
  "judge": null
 },
 "files": {
  "glb": "sha256:15a9c0492a7a9919b63b13fec1c02c790b3f921415e65c824933cb521032f024",
  "painted_glb": "sha256:7c97ad98e411eedb983db86a6faa5b607a4c4d3d2fe0e523445296062520ec46"
 },
 "deps": [],
 "release": "sha256:c4d0e2372fd84c4c0508ee23b6e24e29b6bfee42fe22138018976166c12241f2",
 "painted": {
  "editor": "GPT Image 2 (Codex)",
  "method": "forge-repaint all-round (render, image edit, project back)",
  "views_kept": 9,
  "views_tried": 9,
  "pictures": 9,
  "outside_painted": 0.9375293145163163,
  "tris": 76758,
  "bytes": 1067612,
  "gpu_mb_decoded": 7.7,
  "how": "files.painted_glb = a static one-material copy with the repainted texture: no moving parts and no Paint recolour; use files.glb for gameplay"
 },
 "thumbnail": "media/15a9c0492a7a9919b63b13fec1c02c790b3f921415e65c824933cb521032f024/thumbnail-5351b802c6672445.jpg",
 "source_photos": [
  "media/15a9c0492a7a9919b63b13fec1c02c790b3f921415e65c824933cb521032f024/source-1-78a611baa7f44947.jpg"
 ],
 "reuse": {
  "omg": true,
  "omu": true,
  "reason": ""
 },
 "visual": {
  "id": "vehicle.space.saucer/alien-saucer",
  "release": "sha256:c4d0e2372fd84c4c0508ee23b6e24e29b6bfee42fe22138018976166c12241f2",
  "thumbnail_sha256": "5351b802c6672445614a176d5d14114562bd02b6b0f488f577630a799e4b7b55",
  "n": 3,
  "description": "Large circular flying saucer UFO spacecraft with a raised central dome, ring of cockpit windows, and perimeter rim lights, retro sci-fi style, smooth metallic panels, iridescent silver, pale pink, and champagne gold colours, large vehicle size class.",
  "artwork": false,
  "person": false,
  "model": "forge:build-gemini-4",
  "image_sha256": "4f89b83a918c11016c94169f00fc1fdf33f5589249fbeac0feb824f12c30c2c1",
  "safety": {
   "model": "jev",
   "probabilities": {
    "person": 0.02,
    "artwork": 0.04
   },
   "blocked": false,
   "threshold": 0.35,
   "source": "authored"
  }
 }
}
