{
  "generated_at_utc": "2026-10-18T06:14:47.130480+00:00",
  "generator": "scripts/prepare-planet-assets.py",
  "earth_assets_in_this_bundle": false,
  "earth_credits": "../earth/credits.json",
  "processing_policy": "No creative color/texture changes. Only source extraction, image format conversion and downward resizing. Cube-atlas geometry retained for correct UV mapping.",
  "assets": [
    {
      "planet": "mars",
      "source_page": "https://science.nasa.gov/resource/planet-mars-3d-model/",
      "download_url": "https://assets.science.nasa.gov/content/dam/science/psd/mars/resources/gltf_files/24881_Mars_1_6792.glb",
      "credit": "NASA/JPL-Caltech",
      "source_sha256": "0d27fc65fe3e6a5847cf0cd3a5c951538afdd49bd0513607d8a70e8ab1d8d7ac",
      "source_file": "qa/source/planets/mars.glb",
      "original_dimensions": [
        2048,
        1536
      ],
      "original_mode": "RGBA",
      "extracted_image_sha256": "71f55e091d75e9c82655a2299b89d20ee6f75b6543268c9c84e7ce054ed633e5",
      "glb_image_index": 1,
      "glb_image_name": "mars_diff.jpg",
      "source_kind": "NASA public 3D visualization model texture",
      "scientific_limitations": "NASA's source page labels this a 3D model, not a calibrated raw observation or a documented true-color map. Retained exactly as distributed for visualization; source color processing, mosaicking and any artist adjustments are not asserted to be observationally calibrated.",
      "outputs": [
        {
          "file": "mars-2k.jpg",
          "bytes": 675317,
          "sha256": "0d8150015b85d7774c9e38cf02c46eeb847b0e3857b31e22fbbf8ce403e9dcd2",
          "dimensions": [
            2048,
            1536
          ],
          "processing": "Decode original pixels; drop fully opaque alpha if present; Lanczos downsample only when needed; JPEG quality 94, 4:4:4 progressive encoding. Preserve embedded ICC profile when present. No recoloring, sharpening, upscaling, flipping, cropping, procedural detail or image generation."
        }
      ],
      "projection": "Cube-atlas UV layout; MUST use supplied original surface geometry; not an equirectangular texture",
      "geometry": {
        "file": "mars-surface-geometry.json",
        "bytes": 236262,
        "sha256": "2410885b2a05be5f725f31e5083ce93d5f37bac6897848766fe8ba2c9791b430",
        "vertices": 2034,
        "triangles": 3072,
        "normalization_divisor": 503.3651883528715,
        "source_axis_radii": [
          500.0000305175781,
          497.0555725097656,
          500.0000305175781
        ],
        "texture_flipY": false,
        "processing": "Original GLB positions divided by source axis extents to remove oblateness, then normalized to unit length. Radial unit normals recalculated for this sphere. Original topology and UVs retained to 9 decimal places. Site applies physical radius and oblateness separately; no image reprojection or new texture detail."
      },
      "normal_map": {
        "file": "mars-normal.png",
        "bytes": 507991,
        "sha256": "5e2f8509d1248b22b443e4ff50b3dfc82394a26f619636d730598dd5fafe24e2",
        "dimensions": [
          2048,
          1536
        ],
        "mode": "RGBA",
        "source_page": "https://science.nasa.gov/resource/planet-mars-3d-model/",
        "download_url": "https://assets.science.nasa.gov/content/dam/science/psd/mars/resources/gltf_files/24881_Mars_1_6792.glb",
        "credit": "NASA/JPL-Caltech",
        "source_glb_sha256": "0d27fc65fe3e6a5847cf0cd3a5c951538afdd49bd0513607d8a70e8ab1d8d7ac",
        "original_sha256": "5e2f8509d1248b22b443e4ff50b3dfc82394a26f619636d730598dd5fafe24e2",
        "glb_material_index": 0,
        "glb_texture_index": 0,
        "glb_image_index": 0,
        "glb_image_name": "mars_norm.jpg",
        "material_slot": "normalTexture",
        "tex_coord": 0,
        "normal_scale": 1,
        "color_space": "NoColorSpace",
        "texture_flipY": false,
        "projection": "Same cube-atlas UVs as mars-surface-geometry.json; tangent-space normal map as identified by the source glTF material",
        "processing": "Byte-for-byte extraction of the original embedded PNG. No recoloring, resizing, channel changes or synthesized normal detail.",
        "scientific_limitations": "Distributed as a normalTexture in NASA/JPL-Caltech's public 3D visualization model. This does not establish that the normal values are calibrated observed terrain or a scientific elevation product."
      }
    },
    {
      "planet": "mercury",
      "source_page": "https://science.nasa.gov/resource/mercury-3d-model/",
      "download_url": "https://assets.science.nasa.gov/content/dam/science/psd/solar/2023/09/m/Mercury_1_4878.glb",
      "credit": "NASA Visualization Technology Applications and Development (VTAD)",
      "source_sha256": "0222fa976a5bb3ae3222eeddaaa7150656837a97c515f065eb855e0b1dd2ab94",
      "source_file": "qa/source/planets/mercury.glb",
      "original_dimensions": [
        2048,
        1536
      ],
      "original_mode": "RGBA",
      "extracted_image_sha256": "fadf06aa5c8e6846f79a53167a528e6e91ab55142404f89df83fc858d94482f0",
      "glb_image_index": 0,
      "glb_image_name": "mercury_diff.jpg",
      "source_kind": "NASA public 3D visualization model texture",
      "scientific_limitations": "NASA's source page labels this a 3D model, not a calibrated raw observation or a documented true-color map. Retained exactly as distributed for visualization; source color processing, mosaicking and any artist adjustments are not asserted to be observationally calibrated.",
      "outputs": [
        {
          "file": "mercury-2k.jpg",
          "bytes": 997151,
          "sha256": "075b3d5ff82f667c749fd44e9c8f7ff3a38ca0660876fb65a78fdbe3b4a80f9f",
          "dimensions": [
            2048,
            1536
          ],
          "processing": "Decode original pixels; drop fully opaque alpha if present; Lanczos downsample only when needed; JPEG quality 94, 4:4:4 progressive encoding. Preserve embedded ICC profile when present. No recoloring, sharpening, upscaling, flipping, cropping, procedural detail or image generation."
        }
      ],
      "projection": "Cube-atlas UV layout; MUST use supplied original surface geometry; not an equirectangular texture",
      "geometry": {
        "file": "mercury-surface-geometry.json",
        "bytes": 236262,
        "sha256": "97f30e2fcbcc51eeeeae1940672f6d5e7bdbe3353f944cb4989bd86d27495c33",
        "vertices": 2034,
        "triangles": 3072,
        "normalization_divisor": 504.3532712234974,
        "source_axis_radii": [
          500.0000305175781,
          500.0000305175781,
          500.0000305175781
        ],
        "texture_flipY": false,
        "processing": "Original GLB positions divided by source axis extents to remove oblateness, then normalized to unit length. Radial unit normals recalculated for this sphere. Original topology and UVs retained to 9 decimal places. Site applies physical radius and oblateness separately; no image reprojection or new texture detail."
      }
    },
    {
      "planet": "jupiter",
      "source_page": "https://svs.gsfc.nasa.gov/12021/",
      "download_url": "https://svs.gsfc.nasa.gov/vis/a010000/a012000/a012021/Hubble_Jupiter_color_global_map_2015a.tif",
      "credit": "NASA's Goddard Space Flight Center; Space Telescope Science Institute",
      "source_sha256": "c3b915227ef88899a07a2b62584d9303d77d3491b9bb7de8824fb6df4a52f7b2",
      "source_file": "qa/source/planets/jupiter.tif",
      "original_dimensions": [
        3600,
        1800
      ],
      "original_mode": "RGB",
      "source_kind": "Observation-derived 2015 Hubble WFC3 global color map",
      "scientific_limitations": "A published observation-derived, processed global mosaic from 2015; not live imagery, raw detector data or a claim of naked-eye color. Black bands at the polar image edges are present in the original TIFF and deliberately not filled or extrapolated. Compression and resizing are the only new image changes.",
      "science_credits": [
        "Amy A. Simon (NASA/GSFC)",
        "Michael H. Wong (University of California, Berkeley)",
        "Glenn Orton (NASA/JPL-Caltech)"
      ],
      "outputs": [
        {
          "file": "jupiter-2k.jpg",
          "bytes": 477350,
          "sha256": "852b05ef6ab7e0428b7815b2b731535ca3f335d6f2cff3aeb086d43593d20dd1",
          "dimensions": [
            2048,
            1024
          ],
          "processing": "Decode original pixels; drop fully opaque alpha if present; Lanczos downsample only when needed; JPEG quality 94, 4:4:4 progressive encoding. Preserve embedded ICC profile when present. No recoloring, sharpening, upscaling, flipping, cropping, procedural detail or image generation."
        },
        {
          "file": "jupiter-full.jpg",
          "bytes": 1172947,
          "sha256": "8c4a19f96795fe7bc5f8d77b8d74dd910f4ae73ace9a9434cde65edd7d3b6057",
          "dimensions": [
            3600,
            1800
          ],
          "processing": "Decode original pixels; drop fully opaque alpha if present; Lanczos downsample only when needed; JPEG quality 94, 4:4:4 progressive encoding. Preserve embedded ICC profile when present. No recoloring, sharpening, upscaling, flipping, cropping, procedural detail or image generation."
        }
      ],
      "projection": "2:1 globe map; supplied image orientation unchanged"
    },
    {
      "planet": "saturn",
      "source_page": "https://science.nasa.gov/resource/saturn-3d-model/",
      "download_url": "https://assets.science.nasa.gov/content/dam/science/psd/solar/2023/09/s/Saturn_1_120536.glb",
      "credit": "NASA Visualization Technology Applications and Development (VTAD)",
      "source_sha256": "8dbfde533b13e938408d8aded1d1ce48a084806233f67775371d83013dba7d38",
      "source_file": "qa/source/planets/saturn.glb",
      "original_dimensions": [
        4096,
        3072
      ],
      "original_mode": "RGBA",
      "extracted_image_sha256": "2b4628833c2610ac6677f729376c00440a6bc4df4f85b4928519179e37536f4b",
      "glb_image_index": 0,
      "glb_image_name": "saturn_diff.jpg",
      "source_kind": "NASA public 3D visualization model texture",
      "scientific_limitations": "NASA's source page labels this a 3D model, not a calibrated raw observation or a documented true-color map. Retained exactly as distributed for visualization; source color processing, mosaicking and any artist adjustments are not asserted to be observationally calibrated.",
      "outputs": [
        {
          "file": "saturn-2k.jpg",
          "bytes": 323172,
          "sha256": "7e432cacd6170d661e0ce754995e7f4e40e9b37d911da8e6e0ee65aa740384cd",
          "dimensions": [
            2048,
            1536
          ],
          "processing": "Decode original pixels; drop fully opaque alpha if present; Lanczos downsample only when needed; JPEG quality 94, 4:4:4 progressive encoding. Preserve embedded ICC profile when present. No recoloring, sharpening, upscaling, flipping, cropping, procedural detail or image generation."
        },
        {
          "file": "saturn-4k.jpg",
          "bytes": 843316,
          "sha256": "81035d01d160896eef4884c5890673702498f6e01e5f806babb0f1c5af2e806c",
          "dimensions": [
            4096,
            3072
          ],
          "processing": "Decode original pixels; drop fully opaque alpha if present; Lanczos downsample only when needed; JPEG quality 94, 4:4:4 progressive encoding. Preserve embedded ICC profile when present. No recoloring, sharpening, upscaling, flipping, cropping, procedural detail or image generation."
        }
      ],
      "projection": "Cube-atlas UV layout; MUST use supplied original surface geometry; not an equirectangular texture",
      "geometry": {
        "file": "saturn-surface-geometry.json",
        "bytes": 196728,
        "sha256": "177a70c68fe9f3c538a4161f45d279a618a4bb98988adfb766391bc8f7e9c46d",
        "vertices": 1649,
        "triangles": 3072,
        "normalization_divisor": 500.0370583148252,
        "source_axis_radii": [
          500.0,
          451.0190124511719,
          500.0
        ],
        "texture_flipY": false,
        "processing": "Original GLB positions divided by source axis extents to remove oblateness, then normalized to unit length. Radial unit normals recalculated for this sphere. Original topology and UVs retained to 9 decimal places. Site applies physical radius and oblateness separately; no image reprojection or new texture detail."
      },
      "ring": {
        "file": "saturn-rings.png",
        "bytes": 9615,
        "sha256": "d4ddbcd796869bd3f8508252da4fd284c4195cd0f06c02294f6c918b568ba1c7",
        "dimensions": [
          4096,
          16
        ],
        "mode": "RGBA",
        "alpha_range": [
          0,
          255
        ],
        "original_sha256": "d4ddbcd796869bd3f8508252da4fd284c4195cd0f06c02294f6c918b568ba1c7",
        "inner_radius_ratio": 1.2322094088400133,
        "outer_radius_ratio": 2.3307286980424413,
        "uv": {
          "u": "0 at inner radius, 1 at outer radius",
          "v": "azimuth around ring; source image is a 4096-by-16 radial strip",
          "texture_flipY": false,
          "use": "Map U=(r-inner)/(outer-inner), V=azimuth/(2*pi); retain PNG alpha with transparent material and depthTest=true, depthWrite=false."
        },
        "processing": "Byte-for-byte extraction of original embedded PNG; alpha retained; no alterations.",
        "source_kind": "NASA VTAD visualization-model ring color and opacity profile, not a newly derived observational optical-depth measurement"
      }
    },
    {
      "planet": "uranus",
      "source_page": "https://science.nasa.gov/resource/uranus-3d-model/",
      "download_url": "https://assets.science.nasa.gov/content/dam/science/psd/solar/2023/09/u/Uranus_1_51118.glb",
      "credit": "NASA Visualization Technology Applications and Development (VTAD)",
      "source_sha256": "9c56f96bbfa82d923479c3dd83a00c35238a36addcfbcc61916f1377fe586bd5",
      "source_file": "qa/source/planets/uranus.glb",
      "original_dimensions": [
        1024,
        512
      ],
      "original_mode": "RGBA",
      "extracted_image_sha256": "cf72fd1f5a8fd2ca14d268503db7f94b57adab8be3b80b3a1dc460644c97be28",
      "glb_image_index": 0,
      "glb_image_name": "Image_0",
      "source_kind": "NASA public 3D visualization model texture",
      "scientific_limitations": "NASA's source page labels this a 3D model, not a calibrated raw observation or a documented true-color map. Retained exactly as distributed for visualization; source color processing, mosaicking and any artist adjustments are not asserted to be observationally calibrated.",
      "outputs": [
        {
          "file": "uranus-2k.jpg",
          "bytes": 14178,
          "sha256": "9c7fddaba053894a90192f68072fc3b0778b4a65a528e6d597cec6e63665dce0",
          "dimensions": [
            1024,
            512
          ],
          "processing": "Decode original pixels; drop fully opaque alpha if present; Lanczos downsample only when needed; JPEG quality 94, 4:4:4 progressive encoding. Preserve embedded ICC profile when present. No recoloring, sharpening, upscaling, flipping, cropping, procedural detail or image generation."
        }
      ],
      "projection": "2:1 globe map; supplied image orientation unchanged"
    },
    {
      "planet": "neptune",
      "source_page": "https://science.nasa.gov/resource/neptune-3d-model/",
      "download_url": "https://assets.science.nasa.gov/content/dam/science/psd/solar/2023/09/n/Neptune_1_49528.glb",
      "credit": "NASA Visualization Technology Applications and Development (VTAD)",
      "source_sha256": "2fc3af08d56ed429b9cc56b95d151102aa5807ea958e7cb8806a42e12a699ba8",
      "source_file": "qa/source/planets/neptune.glb",
      "original_dimensions": [
        1024,
        512
      ],
      "original_mode": "RGBA",
      "extracted_image_sha256": "471826354bab45d381ba552503ac138c779e3ae539b5f14206c42426195077cd",
      "glb_image_index": 0,
      "glb_image_name": "Image_0",
      "source_kind": "NASA public 3D visualization model texture",
      "scientific_limitations": "NASA's source page labels this a 3D model, not a calibrated raw observation or a documented true-color map. Retained exactly as distributed for visualization; source color processing, mosaicking and any artist adjustments are not asserted to be observationally calibrated.",
      "outputs": [
        {
          "file": "neptune-2k.jpg",
          "bytes": 76657,
          "sha256": "e2f89c51b37c86dc569ccc75ae2dd430e7f5e59d2b3964472d9186c1f17d5eec",
          "dimensions": [
            1024,
            512
          ],
          "processing": "Decode original pixels; drop fully opaque alpha if present; Lanczos downsample only when needed; JPEG quality 94, 4:4:4 progressive encoding. Preserve embedded ICC profile when present. No recoloring, sharpening, upscaling, flipping, cropping, procedural detail or image generation."
        }
      ],
      "projection": "2:1 globe map; supplied image orientation unchanged"
    }
  ],
  "geometry_module": {
    "file": "surfaces.js",
    "bytes": 669386,
    "sha256": "3a42e3d286f01416d7e7e787f512a4bbd03ac06f3b8fce991927742595d585c2",
    "processing": "Exact JSON geometry records exported as static ES module data; avoids a separate runtime JSON fetch dependency."
  }
}
