{
  "article_slugs": [
    "how-to-make-energy-shield-godot-4",
    "godot-hit-effect-not-following-node",
    "local-space-vs-world-space-effects-godot"
  ],
  "artifact": "godot-vfx-coordinate-space-proof",
  "checks": [
    {
      "id": "scene_loads_required_nodes",
      "observed": {
        "scene": "res://scenes/articles/vfx_coordinate_space_demo.tscn"
      },
      "passed": true
    },
    {
      "id": "world_hit_round_trips_through_consuming_mesh",
      "observed": {
        "world_error": 0.0
      },
      "passed": true
    },
    {
      "id": "nested_mesh_owner_is_not_controller_space",
      "observed": {
        "controller_local": [
          0.319999933242798,
          0.439999997615814,
          0.860000014305115
        ],
        "difference": 0.280000001192093,
        "mesh_local": [
          0.319999933242798,
          0.159999996423721,
          0.860000014305115
        ]
      },
      "passed": true
    },
    {
      "id": "object_owned_anchor_follows_receiver",
      "observed": {
        "marker_displacement": 1.13558351993561
      },
      "passed": true
    },
    {
      "id": "world_owned_anchor_stays_at_event_position",
      "observed": {
        "marker_displacement": 0.0
      },
      "passed": true
    },
    {
      "id": "fixed_hit_buffer_caps_active_anchors",
      "observed": {
        "maximum": 4,
        "observed": 4
      },
      "passed": true
    },
    {
      "id": "shader_receives_named_local_anchor",
      "observed": {
        "shader_anchor": [
          -0.269999980926514,
          0.310000002384186,
          0.809999942779541
        ]
      },
      "passed": true
    },
    {
      "id": "direction_conversion_uses_basis_without_translation",
      "observed": {
        "local_direction": [
          0.44888174533844,
          0.888395488262177,
          -0.0962218642234802
        ]
      },
      "passed": true
    },
    {
      "id": "receiver_materials_are_runtime_unique",
      "observed": {
        "local_material_id": -9223372009407248915,
        "world_material_id": -9223372009390471698
      },
      "passed": true
    },
    {
      "id": "world_marker_matches_recorded_event_anchor",
      "observed": {
        "world_anchor": [
          1.57069492340088,
          0.519712507724762,
          0.779065668582916
        ]
      },
      "passed": true
    }
  ],
  "engine": {
    "string": "4.7.1-stable (official)"
  },
  "failed": [],
  "failed_count": 0,
  "measurement_scope": "No GPU timing, frame-time, overdraw, device comparison, particle, audio, or sustained-beam performance measurement is included.",
  "passed": true,
  "passed_count": 10,
  "proof_scope": "Correctness checks for world-to-mesh-local conversion, object-owned and world-owned anchors, nested mesh ownership, fixed hit-buffer bounds, point-versus-direction transforms, and per-receiver material isolation.",
  "source_manifest": [
    {
      "path": "LICENSE",
      "bytes": 1065,
      "sha256": "8429a4194733f32d64f3447cd65ebc3ae904adc0e92001aa6a7998e77ac5ca0b"
    },
    {
      "path": "project.godot",
      "bytes": 595,
      "sha256": "227771c6a205fdd596ad840a423afe7d519b19bc09af430f202bb84756329e0d"
    },
    {
      "path": "README.md",
      "bytes": 1693,
      "sha256": "e7415eb44d39832fd059e512c7005fe3c327640c6022621d10d63ee50e58fd46"
    },
    {
      "path": "scenes/articles/vfx_coordinate_space_demo.tscn",
      "bytes": 4262,
      "sha256": "2d04ed6c83f813f77990bc8cedcf273a13ac798b835e93aa045bccf82a299013"
    },
    {
      "path": "scripts/articles/vfx_coordinate_space_demo.gd",
      "bytes": 2901,
      "sha256": "4db2ebf96b6cc39e1d0a729e8ebe9aed7eca02d701790db3f6050a0dc5efe3df"
    },
    {
      "path": "scripts/articles/vfx_coordinate_space_proof.gdshader",
      "bytes": 1037,
      "sha256": "8d5b52c1ebde9a8b48271741e2a602037a5453733fdf976b43d57fc9ba59f410"
    },
    {
      "path": "tools/verify_vfx_coordinate_space_demo.gd",
      "bytes": 6236,
      "sha256": "62092d0a338bb9050605119f14fe95f3fbc3dd91d0fbfd8e22943c52224f62c5"
    }
  ],
  "published_files": {
    "source_zip": {
      "path": "/downloads/pathforge/godot-vfx-coordinate-space-proof-source.zip",
      "bytes": 7537,
      "sha256": "c0026d28b9c373a0f590b756d359d3c2bd2658285d80fa1e6a4a0d47a2782114"
    },
    "verification_receipt": {
      "path": "/downloads/pathforge/godot-vfx-coordinate-space-proof-verification.json"
    }
  },
  "extracted_package_rerun": {
    "passed": true,
    "check_count": 10,
    "source_manifest_hashes_match": true,
    "engine": "4.7.1-stable (official)"
  }
}
