Blender Rendering Workflow
Read the shared execution guidance once per task
for autonomous decisions, evidence cadence, and long-task continuity.
Treat a render as a reproducible deliverable, not a screenshot that happened to
look acceptable once.
For architecture, daylight shafts or fabric-heavy scenes, read
interiors and atmosphere.
For photorealistic materials or environment lighting, use
scanned materials and HDRIs: the bundled
Poly Haven search/download tools acquire verified CC0 maps at up to 8K. Author
the scene's important forms, but do not impose a from-scratch-only constraint
that reduces realism.
Use the authored scene surface
Use blender_render_scene for final beauty renders and lighting diagnosis.
Call it with inspectOnly: true first when camera names, dependencies or render
settings are unknown. Then select existing cameras by exact name and optional
frames; at most 12 camera/frame combinations are allowed. The default uses the
active camera/frame, caps the longest edge at 1280 and Cycles samples at 64, and
automatically selects an available GPU with an explicit recorded CPU fallback.
Choose device: "cpu" or a specific backend when reproducibility requires it.
Use a fresh output directory for each run. Inspect the inline PNG and
render-manifest.json; errors are not successful evidence.
The standalone equivalent is bundled in this skill:
& $env:BLENDER_EXECUTABLE --background --factory-startup --disable-autoexec `
--python-exit-code 1 --python "<skill-root>/scripts/render_scene.py" -- `
--input scene.blend --output-dir renders/preview-01 --max-edge 1280 --samples 64
This preserves authored lights, world, volumes, cameras, materials and color
management. blender_render_evidence deliberately replaces cameras and lighting;
use it for standardized geometry checks, not as an interior's final image.
Neither tool substitutes for authoring the scene in durable source.
Establish the render contract
Before changing the scene, record:
- the intended audience, view distance, reference mood, and required story beat;
- still, turntable, image sequence, or video deliverable; resolution, frame
range, frame rate, and output format;
- render engine, device assumptions, time/noise budget, and whether the result
must match an engine or compositor downstream;
- required cameras, hero and diagnostic views, render passes, alpha, and color
management requirements;
- which lights, world, materials, volumes, and compositor nodes are part of the
authored result.
Keep these settings as named constants in the durable scene-generation script.
Do not use a viewport screenshot as final evidence when the request calls for a
rendered deliverable.
Author for repeatability
- Name cameras, lights, world nodes, view layers, render settings, and output
nodes semantically.
- Set engine, resolution, frame range, sampling, denoise policy, transparent
film, and color-management explicitly; never rely on a startup-file default.
- Frame the subject with a deliberate focal length and camera height before
increasing samples or adding post-processing.
- Light for form: establish key, fill, rim/background separation, contact
shadow, and exposure before cosmetic effects. Keep enough neutral evidence
lighting to expose intersections and texture failures.
- Use render passes and compositor nodes only when they improve the requested
result. Keep the uncomposited beauty output available for diagnosis.
- For turntables and animated output, render a short low-cost preview first;
then lock camera and lighting before the final frame range.
- For a render farm or external engine, emit a self-contained handoff manifest
listing Blender version, engine, device assumptions, assets, fonts, cache
paths, frame range, and output settings.
Iterate with evidence
For a normal asset handoff, include a polished hero presentation by default.
Use a backdrop that separates the asset silhouette, softer key/fill lighting,
controlled highlights, visible contact shadows, and framing that makes details
readable. Match the material colors and avoid white-on-white or blown-out studio
setups. Scale light power with squared scene dimensions when scaling distances
and emitter sizes together.
Use the validation renderer's auto, neutral, dark, or light presentation
as a starting point. Inspect the first image and adapt the preset or authored
studio when contrast, translucency, emission, or textures require it. When two
presentations fit distinct needs, deliver both with clear labels; do not make
the user choose a preset before producing an initial useful result. Keep the
fixed diagnostic views alongside the hero, and preserve explicitly requested
art direction. A studio render does not replace required in-context shots.
- Render a low-sample diagnostic frame for every required camera.
- Open the rendered images, not merely file-existence logs.
- Check composition, silhouette separation, exposure, specular control,
shadow grounding, color balance, texture scale, noise/fireflies, clipping,
and whether the requested material reads correctly.
- Correct scene, material, camera, or lighting causes before tuning denoise,
bloom, depth of field, or grading to hide them.
- Render final stills or a bounded preview sequence. Open a contact sheet and,
for motion, the encoded video or sampled frames.
Completion gate
Do not call a render complete until the source reproduces it in a clean Blender
process and the final output has been visually opened. Report exact output
paths, Blender and engine version, resolution, frame range, samples/denoise,
color management, passes, render duration, and any machine-specific limits.
Use $blender-agent-studio:blender-asset-validation for fixed multiview
geometry evidence; that evidence supplements rather than replaces the art
directed final render.
For glass around an emissive subject, validate the final engine rather than the
node graph alone. Keep transmission, alpha/blend behavior, refraction, exposure,
and bloom controlled so the enclosure reads as glass and the emissive subject
retains a distinct colored silhouette. An opaque or blown-white enclosure is a
render failure even when its material is technically transmissive.
1---2name: blender-rendering-workflow3description: Build, diagnose, and deliver Blender still, turntable, sequence, and animation renders with reproducible lighting, camera, color-management, compositor, and output settings. Use when a request concerns product visualization, cinematic shots, architectural renders, look development, render passes, denoising, compositing, or final image/video delivery.4---56# Blender Rendering Workflow78Read [the shared execution guidance](references/astra-workflow.md) once per task9for autonomous decisions, evidence cadence, and long-task continuity.1011Treat a render as a reproducible deliverable, not a screenshot that happened to12look acceptable once.1314For architecture, daylight shafts or fabric-heavy scenes, read15[interiors and atmosphere](references/interiors-and-atmosphere.md).16For photorealistic materials or environment lighting, use17[scanned materials and HDRIs](references/poly-haven-materials.md): the bundled18Poly Haven search/download tools acquire verified CC0 maps at up to 8K. Author19the scene's important forms, but do not impose a from-scratch-only constraint20that reduces realism.2122## Use the authored scene surface2324Use `blender_render_scene` for final beauty renders and lighting diagnosis.25Call it with `inspectOnly: true` first when camera names, dependencies or render26settings are unknown. Then select existing `cameras` by exact name and optional27`frames`; at most 12 camera/frame combinations are allowed. The default uses the28active camera/frame, caps the longest edge at 1280 and Cycles samples at 64, and29automatically selects an available GPU with an explicit recorded CPU fallback.30Choose `device: "cpu"` or a specific backend when reproducibility requires it.31Use a fresh output directory for each run. Inspect the inline PNG and32`render-manifest.json`; errors are not successful evidence.3334The standalone equivalent is bundled in this skill:3536```powershell37& $env:BLENDER_EXECUTABLE --background --factory-startup --disable-autoexec `38 --python-exit-code 1 --python "<skill-root>/scripts/render_scene.py" -- `39 --input scene.blend --output-dir renders/preview-01 --max-edge 1280 --samples 6440```4142This preserves authored lights, world, volumes, cameras, materials and color43management. `blender_render_evidence` deliberately replaces cameras and lighting;44use it for standardized geometry checks, not as an interior's final image.45Neither tool substitutes for authoring the scene in durable source.4647## Establish the render contract4849Before changing the scene, record:5051- the intended audience, view distance, reference mood, and required story beat;52- still, turntable, image sequence, or video deliverable; resolution, frame53 range, frame rate, and output format;54- render engine, device assumptions, time/noise budget, and whether the result55 must match an engine or compositor downstream;56- required cameras, hero and diagnostic views, render passes, alpha, and color57 management requirements;58- which lights, world, materials, volumes, and compositor nodes are part of the59 authored result.6061Keep these settings as named constants in the durable scene-generation script.62Do not use a viewport screenshot as final evidence when the request calls for a63rendered deliverable.6465## Author for repeatability66671. Name cameras, lights, world nodes, view layers, render settings, and output68 nodes semantically.692. Set engine, resolution, frame range, sampling, denoise policy, transparent70 film, and color-management explicitly; never rely on a startup-file default.713. Frame the subject with a deliberate focal length and camera height before72 increasing samples or adding post-processing.734. Light for form: establish key, fill, rim/background separation, contact74 shadow, and exposure before cosmetic effects. Keep enough neutral evidence75 lighting to expose intersections and texture failures.765. Use render passes and compositor nodes only when they improve the requested77 result. Keep the uncomposited beauty output available for diagnosis.786. For turntables and animated output, render a short low-cost preview first;79 then lock camera and lighting before the final frame range.807. For a render farm or external engine, emit a self-contained handoff manifest81 listing Blender version, engine, device assumptions, assets, fonts, cache82 paths, frame range, and output settings.8384## Iterate with evidence8586For a normal asset handoff, include a polished hero presentation by default.87Use a backdrop that separates the asset silhouette, softer key/fill lighting,88controlled highlights, visible contact shadows, and framing that makes details89readable. Match the material colors and avoid white-on-white or blown-out studio90setups. Scale light power with squared scene dimensions when scaling distances91and emitter sizes together.9293Use the validation renderer's `auto`, `neutral`, `dark`, or `light` presentation94as a starting point. Inspect the first image and adapt the preset or authored95studio when contrast, translucency, emission, or textures require it. When two96presentations fit distinct needs, deliver both with clear labels; do not make97the user choose a preset before producing an initial useful result. Keep the98fixed diagnostic views alongside the hero, and preserve explicitly requested99art direction. A studio render does not replace required in-context shots.1001011. Render a low-sample diagnostic frame for every required camera.1022. Open the rendered images, not merely file-existence logs.1033. Check composition, silhouette separation, exposure, specular control,104 shadow grounding, color balance, texture scale, noise/fireflies, clipping,105 and whether the requested material reads correctly.1064. Correct scene, material, camera, or lighting causes before tuning denoise,107 bloom, depth of field, or grading to hide them.1085. Render final stills or a bounded preview sequence. Open a contact sheet and,109 for motion, the encoded video or sampled frames.110111## Completion gate112113Do not call a render complete until the source reproduces it in a clean Blender114process and the final output has been visually opened. Report exact output115paths, Blender and engine version, resolution, frame range, samples/denoise,116color management, passes, render duration, and any machine-specific limits.117Use `$blender-agent-studio:blender-asset-validation` for fixed multiview118geometry evidence; that evidence supplements rather than replaces the art119directed final render.120For glass around an emissive subject, validate the final engine rather than the121node graph alone. Keep transmission, alpha/blend behavior, refraction, exposure,122and bloom controlled so the enclosure reads as glass and the emissive subject123retains a distinct colored silhouette. An opaque or blown-white enclosure is a124render failure even when its material is technically transmissive.