ArTchie Studios

Scene Camera Bookmarks

Save and recall the Scene view camera: pivot, rotation, size, orthographic.

Editor-only. Unity 2021.3+. Lives in Rivet.Editor (includePlatforms: Editor). No extra packages.

Editor window

ArTchie / Rivet / Scene Camera Bookmarks

Control What it does
Save current Captures SceneView.lastActiveSceneView under the name field (creates or overwrites).
Recall LookAt(pivot, rotation, size, orthographic) on the active Scene view.
Rename / Delete Unique names. Delete asks first.
Copy JSON / Write report Writes <project>/RivetReports/scene-camera-bookmarks.json.
Reload file Re-reads the persist file.

Persist path: <project>/ProjectSettings/RivetCameraBookmarks.json (creates ProjectSettings/ if needed).

Batchmode (CI)

Unity -batchmode -nographics -quit -projectPath <proj> -executeMethod Rivet.SceneCameraBookmarks.RunBatch -rivet-action list -rivet-out <file.json>
Unity -batchmode -nographics -quit -projectPath <proj> -executeMethod Rivet.SceneCameraBookmarks.RunBatch -rivet-action recall -rivet-name "Hero closeup"
Arg Meaning
-rivet-action list|save|recall Default list.
-rivet-name <name> Required for save and recall.
-rivet-out <file.json> Output path. Default: <project>/RivetReports/scene-camera-bookmarks.json
-rivet-fail Exit code 1 if recall names a bookmark that does not exist.

Unknown -rivet-action, a missing -rivet-name on save/recall, or save with no Scene view exits 1 in batch.

Recalling in true batchmode (no Scene view) writes the stored transform as wouldRecall and does not fail.

RunBatch only calls EditorApplication.Exit when Application.isBatchMode is true. It logs action=, count=, and the output path.

Also accepts -rivet-action=list / -rivet-name=Hero / -rivet-out=file.json.

JSON

{
  "tool": "SceneCameraBookmarks",
  "generatedUtc": "2026-08-18T02:00:00Z",
  "count": 1,
  "items": [
    {
      "name": "Hero closeup",
      "pivot": { "x": 0.0, "y": 1.0, "z": 0.0 },
      "rotation": { "x": 0.0, "y": 0.0, "z": 0.0, "w": 1.0 },
      "size": 5.0,
      "orthographic": false
    }
  ],
  "wouldRecall": null
}

When a batch recall cannot apply because there is no Scene view, wouldRecall is the same object shape as an items row.

Persist file

ProjectSettings/RivetCameraBookmarks.json:

{
  "bookmarks": [
    {
      "name": "Hero closeup",
      "pivot": { "x": 0.0, "y": 1.0, "z": 0.0 },
      "rotation": { "x": 0.0, "y": 0.0, "z": 0.0, "w": 1.0 },
      "size": 5.0,
      "orthographic": false
    }
  ]
}

Hand-written JSON is parsed with a small built-in reader (no Newtonsoft). A missing or unreadable file starts as an empty store.

Notes

  • save in headless batchmode cannot capture a Scene view (exits 1).
  • Empty projects and a missing RivetReports / ProjectSettings folder are fine.
  • Does not move the Game view camera. Does not touch runtime player code.

Source in the box: Assets/ArTchie Studios/ArTchie-Suite/com.artchie.rivet/Documentation/SceneCameraBookmarks.md