{
  "schemaVersion": "1.0.0",
  "kind": "nandarona.character-2d-runtime",
  "characterId": "oshitane",
  "familyId": "input",
  "sourceRelease": "oshitane@2.9.0",
  "canvas": {
    "width": 512,
    "height": 512,
    "background": "white-matte"
  },
  "rendering": {
    "sourceCanvas": {
      "width": 512,
      "height": 512,
      "background": "white-matte"
    },
    "includedFormats": [
      "png",
      "webp"
    ],
    "alphaStatus": "not-included",
    "recommendedBlend": "normal",
    "warning": "Current frames use a white matte. Engine-native Input Action assets, Unity Input System packages, Godot InputMaps, device glyph packs, haptics, audio, drivers, transparent sprites, and animation rigs are not included and must not be claimed as included."
  },
  "runtime": {
    "coordinateSystem": "normalized-ui-center",
    "defaultPivot": {
      "x": 0.5,
      "y": 0.5
    },
    "stateCount": 6,
    "inputPolicy": "Bind a project input action to the declared semantic channels. Never infer a successful action solely from the displayed animation.",
    "cancelPolicy": "Every hold, drag, rotate, aim, rhythm, and chord interaction must expose cancellation or reset without trapping the player.",
    "reducedMotion": "Replace fast travel, repeated compression, and rotation with state crossfades of 120ms or longer while preserving geometry, count, direction, threshold, and acceptance state.",
    "accessibilityPolicy": "No input state may depend on device-specific letters, flashing, hue, haptics, audio, or motion alone; static geometry and an external accessible label must distinguish the action and state."
  },
  "motion": {
    "characterId": "oshitane",
    "motionModel": "single-depth-press",
    "channels": [
      {
        "id": "pressDepth",
        "type": "normalized",
        "range": [
          0,
          1
        ],
        "default": 0
      },
      {
        "id": "accepted",
        "type": "integer",
        "range": [
          0,
          1
        ],
        "default": 0
      },
      {
        "id": "releaseProgress",
        "type": "normalized",
        "range": [
          0,
          1
        ],
        "default": 0
      }
    ],
    "pivot": {
      "x": 0.5,
      "y": 0.62
    },
    "collision": "single-central-press-region",
    "loop": {
      "states": [
        "touch",
        "press-half",
        "accepted",
        "release"
      ],
      "durationMs": 700
    }
  },
  "frames": [
    {
      "state": "ready",
      "index": 0,
      "png": "media/frames/ready.png",
      "webp": "media/frames/ready.webp",
      "sourceRect": {
        "x": 0,
        "y": 0,
        "width": 512,
        "height": 512
      },
      "contentBounds": {
        "x": 0.1973,
        "y": 0.3613,
        "width": 0.6953,
        "height": 0.5039
      }
    },
    {
      "state": "touch",
      "index": 1,
      "png": "media/frames/touch.png",
      "webp": "media/frames/touch.webp",
      "sourceRect": {
        "x": 512,
        "y": 0,
        "width": 512,
        "height": 512
      },
      "contentBounds": {
        "x": 0.168,
        "y": 0.2695,
        "width": 0.6836,
        "height": 0.5918
      }
    },
    {
      "state": "press-half",
      "index": 2,
      "png": "media/frames/press-half.png",
      "webp": "media/frames/press-half.webp",
      "sourceRect": {
        "x": 1024,
        "y": 0,
        "width": 512,
        "height": 512
      },
      "contentBounds": {
        "x": 0.084,
        "y": 0.4473,
        "width": 0.7422,
        "height": 0.4258
      }
    },
    {
      "state": "accepted",
      "index": 3,
      "png": "media/frames/accepted.png",
      "webp": "media/frames/accepted.webp",
      "sourceRect": {
        "x": 0,
        "y": 512,
        "width": 512,
        "height": 512
      },
      "contentBounds": {
        "x": 0.1563,
        "y": 0.3066,
        "width": 0.7695,
        "height": 0.3672
      }
    },
    {
      "state": "release",
      "index": 4,
      "png": "media/frames/release.png",
      "webp": "media/frames/release.webp",
      "sourceRect": {
        "x": 512,
        "y": 512,
        "width": 512,
        "height": 512
      },
      "contentBounds": {
        "x": 0.1758,
        "y": 0.0293,
        "width": 0.6934,
        "height": 0.6563
      }
    },
    {
      "state": "ready-again",
      "index": 5,
      "png": "media/frames/ready-again.png",
      "webp": "media/frames/ready-again.webp",
      "sourceRect": {
        "x": 1024,
        "y": 512,
        "width": 512,
        "height": 512
      },
      "contentBounds": {
        "x": 0.125,
        "y": 0.2051,
        "width": 0.6895,
        "height": 0.4805
      }
    }
  ]
}
