{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://rig.works/schemas/rig.geometry.mesh.schema.json",
  "title": "rig.geometry.mesh",
  "type": "object",
  "additionalProperties": false,
  "properties": {
    "positions": {
      "type": "array",
      "items": {
        "type": "number"
      }
    },
    "normals": {
      "type": "array",
      "items": {
        "type": "number"
      }
    },
    "indices": {
      "type": "array",
      "items": {
        "$ref": "./_defs.schema.json#/$defs/uint32"
      }
    },
    "loops": {
      "type": "array",
      "items": {
        "$ref": "./_defs.schema.json#/$defs/uint32"
      }
    },
    "loopSizes": {
      "type": "array",
      "items": {
        "$ref": "./_defs.schema.json#/$defs/uint32"
      }
    },
    "texcoords": {
      "type": "array",
      "items": {
        "type": "number"
      }
    },
    "mode": {
      "type": "string",
      "enum": [
        "triangles",
        "lines",
        "line-strip"
      ]
    },
    "faceColors": {
      "type": "array",
      "items": {
        "$ref": "./_defs.schema.json#/$defs/rgba"
      }
    },
    "facePalette": {
      "type": "array",
      "items": {
        "$ref": "./_defs.schema.json#/$defs/uint8"
      }
    }
  },
  "required": [
    "positions",
    "mode"
  ]
}
