Blank

Introduction

A Blank recipe is a small JSON file that describes a 3D world. It lists the parts of the world, their shapes and materials, and how they move. People and AI agents write recipes. The Blank engine reads a recipe, builds the 3D model, renders it and can export it as a standard 3D file.

A floating meadow with trees, flowers, a pond and a glowing shrine
Whispering Clearing, rendered by Blank from living-clearing.json: 249 named parts sharing one breeze and one glow.

This page is the open specification. Anyone may read, write and generate recipes, and build tools that use them. See the license.

A whole recipe

{
  "version": 1,
  "revision": 0,
  "name": "A small lantern",
  "budget": {"triangles": 2000, "nodes": 16, "lights": 1, "particles": 24},
  "materials": {"stone": {"color": "#AFC3C6", "roughness": 0.85},
                "magic": {"color": "#38E0C3", "emission": 0.9}},
  "rhythms": {"glow": {"period": 5, "direction": [0, 0, 1], "wavelength": 30}},
  "parts": [
    {"id": "base", "material": "stone", "position": [0, 0.2, 0],
     "geometry": {"kind": "cone", "radius": 0.4, "top_radius": 0.3, "height": 0.4, "segments": 7}},
    {"id": "heart", "parent": "base", "material": "magic", "position": [0, 0.8, 0],
     "geometry": {"kind": "ico_sphere", "radius": 0.15, "subdivisions": 1},
     "animation": {"rhythm": "glow", "lift": 0.06, "pulse": 0.05},
     "light": {"color": [0.25, 1, 0.8], "intensity": 0.9, "range": 3.5}}
  ]
}