{
  "_comment": "Provenance of the TLT12 release. FILL IN the TODO fields with the values for the actual render run before publishing. The authoritative per-job generator arguments are also embedded in shards/<split>/dataset_info.json under the 'config' / 'configs' key.",

  "dataset": "TLT12",
  "version": "TODO: e.g. 1.0",
  "release_date": "TODO: YYYY-MM-DD",

  "generator": {
    "repository": "https://github.com/fzenke/3D_latent_traversal_dataset_generator",
    "commit": "TODO: git rev-parse HEAD of the generator at render time",
    "dedupe_faces": "TODO: true|false -- true only if rendered at or after commit 987cf9f (2026-07-22), which removes duplicated ShapeNet faces"
  },

  "source_models": {
    "name": "ShapeNetCore.v2",
    "url": "https://shapenet.org/",
    "terms": "https://shapenet.org/terms",
    "note": "The 3D models themselves are NOT redistributed in this release. Only rendered images derived from them."
  },

  "render": {
    "engine": "Blender Cycles via BlenderProc",
    "image_size": 128,
    "n_frames": 32,
    "seqs_per_object": 1000,
    "n_synsets": 12,
    "objects_per_synset": 10,
    "multi_factor": true
  },

  "packaging": {
    "format": "WebDataset tar shards",
    "shard_maxcount": 1000,
    "val_fraction": 0.1,
    "test_fraction": 0.1,
    "split_seed": 0,
    "split_by": "TODO: 'sequence' or 'object' -- must match the split_by field in shards/<split>/dataset_info.json. 'sequence' means the same object appears in every split, so held-out metrics measure generalisation to unseen latent configurations; 'object' means objects are disjoint across splits, so they measure generalisation to unseen objects."
  }
}
