WVY-Blender-5m by Starpower: real Blender renders

WVY-Blender-5m

A tiny language model designed to create animations in Blender.

WVY, designed by Starpower.

We're building tiny local models for creative tools: 3D, filmmaking, music production, and more. WVY-Blender-5m is our Blender experiment: a 5.25-million-parameter language model trained from scratch to turn everyday descriptions into editable, animated 3D scenes.

Describe a subject, a setting, and a little motion. WVY predicts scene instructions; the included Blender builder creates the geometry, materials, keyframes, lighting, and camera. Follow-up instructions can change the scene you already made.

5.25M parameters · 21 MB checkpoint · Local inference · Editable Blender scenes

See it in motion

These videos are actual Blender renders from this checkpoint and its procedural scene builder.

A robot dancing on a skateboard

City setting, character animation, object relationships, and an orbiting camera.

A fox jumping over a car

Object colors, snow, sunrise, character motion, and a tracking camera.

An alien riding a horse

Two subjects moving together in a farm environment with rain.

The exact prompts, decoded scene specifications, and checkpoint hash are included in demo_manifest.json. Each individual clip is five seconds long at 12 fps. These are selected examples, rather than a claim that every requested detail is always reproduced.

What you can do with it

Capability Examples
Build scenes from text A dog walking in a park; a robot dancing on a skateboard
Create characters and objects 126 supported types across people, animals, vehicles, furniture, lights, props, and shapes
Animate supported actions Walking, running, jumping, dancing, flying, rolling, and other actions in the 29-action vocabulary
Put subjects together Riding a horse, sitting on a couch, jumping over a car, moving around another subject
Change appearance Colors, sizes, material finishes, hair, clothing, and supported character attributes
Direct the scene 24 settings, weather, time of day, lighting, shot size, camera motion, lens presets, and depth of field
Edit with follow-up instructions “Make the dog blue,” “add a tree,” “remove the car,” “zoom out”
Ask Blender questions Routes questions to 119 written Blender knowledge topics
Continue in Blender Keep real objects, materials, cameras, and animation keyframes in an editable scene

The current system makes stylized procedural scenes from text. Its scene vocabulary and Blender builders define the available objects and actions. Image input, arbitrary new mesh generation, and numerical rotation commands are outside this checkpoint's current schema.

What it was trained on

WVY was trained from scratch on English prompts paired with a compact scene instruction language. The data was generated or written locally for this project.

Current training corpus Examples Target
Scene descriptions 540,000 A complete new scene specification
Follow-up edits 252,000 Operations that change an existing scene
Blender questions 320,000 A Blender answer-topic ID
Total available pairs 1,112,000 Scene creation, editing, and question routing

Scene examples combine object types, counts, colors, character attributes, actions, relationships, locations, weather, lighting, and camera instructions. Alternate phrasing, spelling variations, and some generated typos broaden the language examples. Blender questions expand hand-authored seeds around 119 topics; their answer paragraphs live in the included knowledge database.

The recorded initial run used a 900,000-pair corpus, followed by a continued-training run using the expanded 1,112,000-pair corpus. The logs record 12,000 initial updates and 4,500 continued updates with batch size 96. Corpus size describes available examples, rather than a guarantee that every row was presented in every run.

The training loop consumes text and instruction labels. The demonstration images, videos, meshes, and Blender files are outputs of the system, rather than visual training inputs.

For example:

Prompt: a red dog walking in a blue house
Target: <new> loc=house place=in lcolor=blue <ent> type=dog color=red act=walk

Prompt: make the dog blue
Target: <edit> <ent> type=dog color=blue

The neural network chooses scene-language tokens. The interpreter applies those tokens, and the procedural Blender code supplies geometry and animation. For Blender questions, the model selects a topic and the application retrieves the corresponding written answer.

Model details

Property Value
Published name WVY-Blender-5m
Checkpoint lineage WVY Blender V2
Author Starpower
Learned parameters 5,252,608
Architecture Decoder-only causal Transformer
Transformer layers 6
Hidden size 256
Attention heads 8
Feed-forward width 1,024, with GELU
Context window 384 tokens
Vocabulary 1,622 tokens
Tokenizer Custom word-wise BPE prompt tokenizer plus fixed scene-language tokens
Output modes New scene, edit operations, Blender answer-topic ID
Decoding Greedy; up to 96 output tokens
Weight format FP32 PyTorch state dictionary
Checkpoint size 21,036,157 bytes, approximately 21 MB
Pretrained base model None; trained from scratch

The model can decode on a CPU. Creating and rendering the 3D scene also requires Blender; that work is separate from language-model inference.

Run it locally

Download this repository and install PyTorch. Blender is required for the scene-building step.

pip install torch

Run the included CLI:

python infer.py "a red dog walking in a blue house" --output scene.json
python infer.py "make the dog blue" --scene scene.json --output scene.json
blender --background --python build_scene.py -- scene.json scene.blend

On macOS, if Blender is not on your PATH:

/Applications/Blender.app/Contents/MacOS/Blender --background --python build_scene.py -- scene.json scene.blend

Or use the model directly:

from model import load, generate
from scenelang import parse_output

model, tokenizer = load("cpu")
tokens = generate(model, tokenizer, ["a red dog walking in a blue house"])[0]
scene = parse_output(tokens)
print(scene)

model.py, tokenizer.py, scenelang.py, tokenizer.json, blender_qa.json, and the checkpoint belong together. scene_builder.py runs inside Blender. infer.py can keep a previous scene JSON so edit instructions apply to that scene.

Evaluation notes

A separate creative stress test used this exact checkpoint on ten requests, including demanding multi-subject prompts and numerical edits. It passed 44 of 49 selected decoded-state checks and all selected checks on 5 of the 10 requests. All ten cases rendered, but rendering success does not prove prompt accuracy. Camera framing, omitted details, and numerical edits remain areas for improvement.

The recorded median CPU decoding time in that run was 18.463 ms using four threads. This is model decoding time only, on the test machine; it excludes Blender generation and rendering. The full stress-test summary is included in evaluation_summary.json.

The direction

We want creation tools to have small, focused models that can work locally and leave the artist with something editable. Blender is one part of that direction. Our wider goal includes 3D workflows, filmmaking, music production, and other creative software.

WVY designed by Starpower.

Downloads last month
91
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support