Rigby2DDocs

Shipping

File formats

FileWhat it isMade by
.rigbyThe work file: a ZIP with project.json (the whole document) and images/*.png, plus audio/* for audio tracks.File ▸ Save
.jsonSkeleton JSON, format 3.8, 4.2 or 4.3.Export ▸ JSON + atlas
.skelBinary skeleton, format 4.3.Export ▸ Binary .skel + atlas
.atlas + .pngTexture atlas: the packed images and where each one sits.Every export
.scene.jsonA scene for runtimes: actors, clips and depths, naming the stage and character skeletons next to it.Export ▸ Scene for runtimes

#The .rigby work file

One self-contained file, like a .blend: bones, slots, skins, constraints, events, animations, images, and the editor-only data (workspace, film output settings, poses, face controls, audio tracks). Open it with File ▸ Open. Keep it in version control or back it up; exports can always be made again from it.

#Skeleton JSON and .skel

The interchange formats runtimes load. Bones are listed so parents come first, slots are in draw order, attachments live in skins, and animations hold timelines with keys relative to the setup pose. Images come from the .atlas or from loose files in the skeleton's images folder.

Rigby2D reads and writes these formats losslessly, for interoperability with your own exported files. Support was implemented clean-room from public documentation and observation of exported data.

#Scene manifest (.scene.json)

{
  "rigbyScene": 1,
  "stage": "street.json",
  "focal": 1000,
  "depth": { "hills": 500 },
  "actors": [
    {
      "id": "nila", "name": "NILA", "bone": "NILA", "slot": "NILA",
      "skeleton": "street.nila.json", "skin": null, "flip": false, "ground": -276,
      "clips": { "meet": [{ "animation": "wave", "start": 0, "in": 0, "out": null, "speed": 1, "loops": 1, "blend": 0 }] }
    }
  ]
}

stage and skeleton are relative to the manifest; each skeleton's atlas has the same name with .atlas. An actor stands on the stage bone bone (raised by ground, mirrored when flip) and is drawn at the stage slot slot. Clips are listed per shot (stage animation): in/out in animation seconds (out null = the end), loops 0 = until the next clip, blend = crossfade seconds from the clip before. depth moves top-level stage bones for parallax: a layer at depth z follows focal / (focal + z) of the camera bone's motion.

#Coordinates and units

  • Units are pixels of the artwork at scale 1.
  • Y points up (runtimes for Y-down engines, such as Godot, convert).
  • Angles are in degrees, counterclockwise.
  • Times are in seconds.

Edit this page on GitHub