blender-cameras

blender-cameras is a skill for Claude Code from RobLe3/cc-blender-skill. It costs 142 tokens per session (2,799 once invoked), scanned A, original, MIT.

A Blender camera setup guide covering lens choice, focus depth, composition, and camera movement. It connects camera settings with the intended visual feel of a shot.

In plain words
What is it for?
Use it to frame product shots, portraits, environments, hero images, orbit shots, dolly moves, and push-ins.
Why use it?
A subject can be modeled correctly but still look wrong because of framing, distortion, focus, or camera movement.

Skill for Claude Code

Written for Claude Code: allowed-tools in frontmatter.

Good fit Use it to frame product shots, portraits, environments, hero images, orbit shots, dolly moves, and push-ins.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/roble3/cc-blender-skill/blender-cameras
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add RobLe3/cc-blender-skill --skill blender-cameras
Clone the repo
git clone --depth 1 https://github.com/RobLe3/cc-blender-skill

Made for: Claude Code.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for blender-cameras

README.md
[![agentmods](https://agentmods.dev/badge/skills/roble3/cc-blender-skill/blender-cameras/github.svg)](https://agentmods.dev/skills/roble3/cc-blender-skill/blender-cameras)
Your own site
<a href="https://agentmods.dev/skills/roble3/cc-blender-skill/blender-cameras"><img src="https://agentmods.dev/badge/skills/roble3/cc-blender-skill/blender-cameras/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for blender-cameras

Your own site · 80×15
<a href="https://agentmods.dev/skills/roble3/cc-blender-skill/blender-cameras"><img src="https://agentmods.dev/badge/skills/roble3/cc-blender-skill/blender-cameras.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 142 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 2,799 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe. Third-party audits
  • Socket pass 12 May 2026
  • Snyk pass 12 May 2026
How audits are shown
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00142 $0.02799
Opus 5 $0.00071 $0.01399
Sonnet 5 $0.00028 $0.00560
Haiku 4.5 $0.00014 $0.00280

Measured 10d ago against content hash 935637b49c75, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-09, from the pricing page.

Security

Grade A, and why

blender-cameras scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 10d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

Origin

Copies of this mod

1 near-identical copy found in the catalogue:

plugin/skills/blender-cameras/SKILL.md · 298 lines

How it starts

The opening of the file, as written. The whole thing — 298 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Blender Cameras

Set up cameras with the same decisions a real cinematographer makes: focal length for feel, f-stop for focus, composition for storytelling.

Focal length cheat sheet

Length Feel Use
14–24mm Very wide, distorted Architecture, claustrophobic interiors, exaggerated perspective
28–35mm Wide, "documentary" Establishing shots, environments
50mm Neutral (≈ human eye) Default storytelling
85mm Short telephoto Portraits, character close-ups (flattering)
100–135mm Telephoto Hero product shots, isolated subjects
200mm+ Long tele Wildlife, surveillance look, heavy compression

Quick rule: 85mm for intimacy, 24mm for spectacle, 50mm for neutral.

Aperture / f-stop

f-stop DoF Use
f/1.2–2.0 Razor thin Hero portraits, dreamy
f/2.8 Shallow Standard portrait
f/4 Moderate Two subjects in frame
f/5.6–8 Medium-deep Group portraits, environments
f/11+ Very deep Landscape, "everything sharp"

Recipes

Recipe 0 — Bbox-aware hero camera (preferred for orchestrator chains)

Use this when you have a specific subject. Computes the subject's bounding box, places camera at a distance that fits the subject in ~80% of the frame vertically, and aims via Track-To.

import bpy, math
from mathutils import Vector

# Choose subject — all meshes named GEO-* by default, or pass a specific list
subject_meshes = [o for o in bpy.data.objects if o.type == 'MESH' and o.name.startswith('GEO-')]
if not subject_meshes:
    raise RuntimeError("No subject meshes found (looking for GEO- prefix)")

# World-space bbox
deps = bpy.context.evaluated_depsgraph_get()
all_verts = []
for o in subject_meshes:
    eo = o.evaluated_get(deps); em = eo.to_mesh()
    for v in em.vertices:
        all_verts.append(o.matrix_world @ v.co)
    eo.to_mesh_clear()
xs = [v.x for v in all_verts]; ys = [v.y for v in all_verts]; zs = [v.z for v in all_verts]
center = Vector(((min(xs)+max(xs))/2, (min(ys)+max(ys))/2, (min(zs)+max(zs))/2))
height = max(zs) - min(zs)
width = max(xs) - min(xs)
biggest = max(height, width)

# Frame fit: at distance D, vertical frame = D × (sensor_h / focal). Solve for D.
focal_mm = 60        # 60mm gives a flattering not-too-wide hero shot
sensor_h_mm = 24     # full-frame
frame_per_meter = sensor_h_mm / focal_mm   # 0.4 m vertical frame per metre of distance
target_fill = 0.80
camera_distance = biggest / (frame_per_meter * target_fill)

# Camera positioned in front (negative Y) with slight X offset for a 3/4 angle
cam_pos = Vector((center.x + camera_distance * 0.3, center.y - camera_distance, center.z))

# Empty for tracking
empty_name = 'Empty-camera_target'
empty = bpy.data.objects.get(empty_name) or bpy.data.objects.new(empty_name, None)
if empty.name not in [o.name for o in bpy.context.collection.objects]:
    bpy.context.collection.objects.link(empty)
empty.location = center

# Camera
cam_data = bpy.data.cameras.new('CAM-hero')
cam_data.lens = focal_mm
cam_data.dof.use_dof = True
cam_data.dof.aperture_fstop = 4.0
cam_data.dof.focus_object = subject_meshes[0]   # focus on first/main subject

cam = bpy.data.objects.new('CAM-hero', cam_data)
bpy.context.collection.objects.link(cam)
cam.location = cam_pos

track = cam.constraints.new('TRACK_TO')
track.target = empty
track.track_axis = 'TRACK_NEGATIVE_Z'
track.up_axis = 'UP_Y'

bpy.context.scene.camera = cam
print(f"camera:bbox_aware center={tuple(round(v,2) for v in center)} dist={camera_distance:.2f}m focal={focal_mm}mm")

Read the full file on GitHub · 298 lines

Files

What ships with it

2 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 10d ago First seen · 298 lines · 142 tokens per session scan A 935637b49c75

Subscribe to this mod's changes

blender-cameras is a skill published in the GitHub repository RobLe3/cc-blender-skill (58 stars, last pushed 4mo ago), licensed MIT. It adds 142 tokens to every session and 2,799 once invoked, about $0.0007 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other skills, from other repositories

blender-director

Use when starting any Blender asset task, planning a production pipeline, coordinating multiple disciplines, or matching a reference photo/concept art. Invoke for game-ready assets, hard surface, environment, character, creature, export, or any multi-skill Blender workflow.

arjun988/blender-skills · 56 tokens

blender-modeler

Core Blender modeling specialist for Edit Mode, modifiers, collections, precision modeling, and scene organization. Use for general 3D modeling, blockouts, cleanup, non-destructive workflows, and scene structure in Blender via MCP.

arjun988/blender-skills · 50 tokens

environment-artist

AAA environment art for modular kits, buildings, terrain, vegetation, architecture, and scene composition. Use for game-optimized environments, storytelling through space, and modular asset pipelines in Blender via MCP.

arjun988/blender-skills · 43 tokens

hard-surface

AAA hard surface modeling for sci-fi, industrial, military, vehicles, weapons, robotics, and mechanical props. Use for boolean/bevel workflows, panel lines, greebles, chamfers, and manufacturing-accurate surfaces in Blender via MCP.

arjun988/blender-skills · 54 tokens

horror-style

Psychological horror art direction for Blender assets inspired by Silent Hill, Resident Evil, Chilla's Art, Fear to Fathom, and Iron Lung. Use for sparse industrial environments, analog aesthetics, and tension-driven lighting.

arjun988/blender-skills · 49 tokens

character-artist

AAA character modeling for human anatomy, stylization, facial topology, clothing, hair, and animation-ready meshes. Use for game characters, facial expressions, and production character assets in Blender via MCP.

arjun988/blender-skills · 43 tokens