camera-rigs SKILL.md skillA

camera-rigs from summerengine/summer is an agent skill: a SKILL.md folder an AI agent loads when a task calls for it.

Install it, pinned
mdr add summerengine/summer/camera-rigs@git:20261007.6d78d4c

Pins git:20261007.6d78d4c in mdr.lock. Pin the fingerprint instead.

Audit grade
A, 17 of 17 checks passed
Kind
SKILL.md skill
Repository
summerengine/summer
Path
library/skills/camera-rigs/SKILL.md
Versions recorded
2
Latest version
git:20261007.6d78d4c, committed Oct 7, 2026
First version recorded
Oct 1, 2026
Size
6,107 bytes
Repository stars
86
License
MIT

Camera rigs for 2D and 3D: Camera2D follow with limits, first-person head camera, SpringArm3D third-person, orthographic top-down, FOV guidance.

Collected from public GitHub. Every version is saved exactly as it was and never changes. Install it at an exact version with the mdr tool, and every file is checked before it reaches your agent. The main file is checked against the SHA-256 fingerprint recorded here, and the others against the fingerprints GitHub keeps for its source commit. The automatic checks below grade the latest version, and the same checks always give the same file the same grade.

What the file says

# Camera Rigs

One rule above all: exactly ONE camera is active. In 3D that is the single
`Camera3D` with `current = true`; two current cameras = flicker or the wrong
view, and a scene with no current camera renders nothing in the game. In 2D a
`Camera2D` is active when `enabled = true` (the default) and it is in the tree;
with several enabled cameras, call `make_current()` on the one you want.

Trigger phrases: "black screen on play", "camera shows past the level edge",
"jerky follow", "wrong FOV", "I need a top-down / isometric / orbit camera".

Ops use engine variant strings (`"Vector3(0, 5, 10)"`), never JSON objects
(`{x: 0, y: 5, z: 10}` fails). Every mutation names its scene: pass the exact
`scenePath` (e.g. `res://main.tscn`). One `summer_batch` per rig saves the scene
once; the examples below use it.

## 2D follow camera

Add the `Camera2D` as a CHILD of the player so it follows for free, then smooth
it and clamp it to the level.

```
summer_batch(scenePath="res://main.tscn", ops=[
  {"op": "AddNode", "parent": "./Player", "type": "Camera2D", "name": "Camera"},
  {"op": "SetProp", "path": "./Player/Camera", "key": "position_smoothing_enabled", "value": true},
…

Read the whole file at its exact version.

How to install

The exact contents, by fingerprint
mdr add summerengine/summer/camera-rigs@sha256:1ea5f6d8e60d00a8

The line at the top of this page pins the label git:20261007.6d78d4c, which is what most people want. This one pins the sha256 fingerprint of the contents instead, so it survives a label being moved. Either way the exact version is written to mdr.lock, and mdr install downloads and checks those contents again, so it installs them exactly or stops with an error.

Badge

mdr badge

[![mdr](https://markdownregistry.com/badge/art_nhs7rrxbuzozukje.svg)](https://markdownregistry.com/a/art_nhs7rrxbuzozukje)

2 badge image fetches in 30 days. What the badge shows.

Versions

The registry has recorded 2 versions of this file, between Oct 1, 2026 and Oct 7, 2026, about one every 6 days.

versioncommittedcommitsizeaudit
git:20261007.6d78d4c latest2026-10-07 6d78d4c 6,107 BA view · diff
git:20261001.f38be272026-10-01 f38be27 6,085 BA view

Audit of the latest version

A  17 of 17 checks passed. Fixed automatic checks with no AI involved, so the same checks give the same answer every run.
  • pass: Frontmatter block present
  • pass: Frontmatter declares a name
  • pass: Frontmatter declares a description
  • pass: Size between 200 bytes and 200 KB (6107 bytes)
  • pass: No zero-width or bidi control characters
  • pass: No instruction hidden inside an HTML comment
  • pass: No link to an exfiltration or paste host
  • pass: No credential-shaped string
  • pass: No instruction to send local credentials anywhere
  • pass: No text hidden with inline styles
  • pass: No prompt-injection phrasing
  • pass: No curl or wget piped into a shell
  • pass: No recursive delete of root, home or parent
  • pass: No instruction to read or print local credentials
  • pass: No base64 blob over 200 characters
  • pass: No link to a raw IP address
  • pass: No script tag

Source

GitHub

summerengine/summer · 86 stars · license MIT · pushed 2026-10-20 · branch main

API

GET https://markdownregistry.com/api/v1/artifacts/art_nhs7rrxbuzozukje
GET https://markdownregistry.com/api/v1/resolve?ref=summerengine/summer/camera-rigs
GET https://markdownregistry.com/api/v1/blob/1ea5f6d8e60d00a8d02377a3fb9e8e08faad18b8fcfe8d78b96367acdb538a4c

Your AI assistant does the legwork. You hear about the deals worth your word. Hand yours the standing instructions at modelranch.com and it joins the network that reads files like this one.

Guides: the SKILL.md format and its required fields · what to check before you install a skill · how to pin a skill to an exact version · where to find agent skills · keeping a team on the same skills · which agent file does what.

More from summerengine/summer

AGENTS.md AGENTS.md file
summerengine/summer · AGENTS.md
git:20261010.8edeb3f · audit A · 86 stars
3d-lighting SKILL.md skill
summerengine/summer · library/skills/3d-lighting/SKILL.md · Set up 3D scene lighting — DirectionalLight3D vs Omni vs Spot, WorldEnvironment, sky, shadow tuning, ambient — per…
git:20261010.4ade947 · audit A · 86 stars
adaptive-music SKILL.md skill
summerengine/summer · library/skills/adaptive-music/SKILL.md · Wire music stems to game state — combat/explore/boss/tension crossfades on a shared bus, paired with a state machine…
git:20261010.4ade947 · audit A · 86 stars
agent-playtesting SKILL.md skill
summerengine/summer · library/skills/agent-playtesting/SKILL.md · Playtest by driving the LIVE game — deterministic launch, frame-stamped probes before/after each action, exact frame…
git:20260911.b4df358 · audit A · 86 stars
ai-characters-in-games SKILL.md skill
summerengine/summer · library/skills/ai-characters-in-games/SKILL.md · Safe AI characters in published games: no keys in the build, replies via Summer's player AI gateway, moderation, spend…
git:20261010.4ade947 · audit A · 86 stars
ambient-bed SKILL.md skill
summerengine/summer · library/skills/ambient-bed/SKILL.md · Generate a long looping location ambience — forest, dungeon, city, spaceship, cave — a looping AudioStreamPlayer on the…
git:20261010.4ade947 · audit A · 86 stars
animated-loop SKILL.md skill
summerengine/summer · library/skills/animated-loop/SKILL.md · Generate a short seamlessly-looping video clip — splash background, animated logo backdrop, idle title-screen footage —…
git:20261010.4ade947 · audit A · 86 stars
animation-tree SKILL.md skill
summerengine/summer · library/skills/animation-tree/SKILL.md · Design and wire AnimationTree state machines and blend trees so clips respond to gameplay — locomotion blends, attack…
git:20261010.4ade947 · audit A · 86 stars
art-direction SKILL.md skill
summerengine/summer · library/skills/art-direction/SKILL.md · Define the game's visual style — references, palette, mood, lighting plan, post-processing, do/don't list — output as…
git:20261010.4ade947 · audit A · 86 stars
asset-strategy SKILL.md skill
summerengine/summer · library/skills/asset-strategy/SKILL.md · Route any 'I need a [thing]' asset request to the right specialist skill — disambiguates 2D / 3D / audio / video / VFX…
git:20261010.4ade947 · audit A · 86 stars
audio-direction SKILL.md skill
summerengine/summer · library/skills/audio-direction/SKILL.md · Define the game's sonic identity — music style, instruments, SFX vocabulary, dynamic music plan — output as an audio…
git:20261010.4ade947 · audit A · 86 stars
auto-fire-targeting SKILL.md skill
summerengine/summer · library/skills/auto-fire-targeting/SKILL.md · Design or fix auto-fire weapon targeting (survivors, top-down ARPG, tower defense) — the pending-damage pattern that…
git:20261010.4ade947 · audit A · 86 stars

Every file in summerengine/summer

Browse by kind, by grade A, or by owner.