# Blender Subdivide Simple

> Blender Subdivide Simple is a paid API for AI agents from market.datapackvibe.com, paid per call via x402, $0.02/call, status unknown (last checked 2026-10-21).

Subdivides a 3D mesh once in Blender without smoothing, increasing polygon density while preserving the original shape.

## Facts

- Endpoint: POST https://market.datapackvibe.com/x402/studio3d-process-subdivide-simple?utm_source=zero.xyz
- Price: $0.02/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-21
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/blender-subdivide-simple-b7d91324
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_vq62rlupWymD8-N0x9Hs1

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability blender-subdivide-simple-b7d91324 -d '<json body>'
```

Example prompt: Take my low-poly mesh (I'll provide the vertices and faces as JSON) and subdivide it once in Blender without any smoothing — keep the original shape, target around 2000 faces, render at 256px resolution with a blue color (#6688bb) and 0.5 roughness.

## When to prefer this

Choose this endpoint when you need to increase polygon density of an existing mesh without any shape smoothing (flat subdivision only). It is ideal for pre-sculpting geometry preparation, LOD stepping, or verifying mesh topology at higher resolutions while keeping the original silhouette intact. Prefer this over smooth subdivision endpoints when preserving hard edges and flat faces is required.

## Known failure modes

- Mesh exceeds 10,000 vertices or 20,000 faces — rejected before processing
- base64 model exceeds 512 KiB decoded — rejected with size error
- busy worker returns an error before payment is settled (no charge)
- invalid face indices (referencing non-existent vertices) cause processing failure
- invalid hex color string format causes validation error
- mutually exclusive fields mesh and model_base64 both provided — schema validation error

## How this service works

Blender: Subdivide Simple: Subdivide the mesh once without smoothing its shape. Accepts mesh JSON, small GLB or OBJ; without input uses an explicitly labelled demo mesh. Runs locally in Blender. Bounded small-model processing, normally under 60 seconds; a busy worker returns an error before payment settlement.

## Output

Returns a rendered image of the subdivided mesh and data describing the resulting geometry (face counts, vertex counts) after one flat subdivision pass in Blender. The response notes if a demo mesh was used instead of user-supplied geometry.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "mesh": {
   "type": "object",
   "required": [
    "vertices",
    "faces"
   ],
   "properties": {
    "faces": {
     "type": "array",
     "items": {
      "type": "array",
      "items": {
       "type": "integer",
       "minimum": 0
      },
      "maxItems": 16,
      "minItems": 3
     },
     "maxItems": 20000
    },
    "vertices": {
     "type": "array",
     "items": {
      "type": "array",
      "items": {
       "type": "number"
      },
      "maxItems": 3,
      "minItems": 3
     },
     "maxItems": 10000
    }
   },
   "description": "Optional mesh in Blender Z-up coordinates. Max 10,000 vertices and 20,000 faces; each face has 3..16 indices.",
   "additionalProperties": false
  },
  "seed": {
   "type": "integer",
   "default": 42,
   "maximum": 2147483647,
   "minimum": 0
  },
  "angle": {
   "type": "number",
   "default": 45,
   "maximum": 180,
   "minimum": -180
  },
  "color": {
   "type": "string",
   "default": "#6688bb",
   "pattern": "^#[0-9a-fA-F]{6}$"
  },
  "count": {
   "type": "integer",
   "default": 3,
   "maximum": 8,
   "minimum": 2
  },
  "amount": {
   "type": "number",
   "default": 0.05,
   "maximum": 0.5,
   "minimum": 0.001
  },
  "factor": {
   "type": "number",
   "default": 1,
   "maximum": 5,
   "minimum": 0.1
  },
  "sample": {
   "enum": [
    "demo"
   ],
   "type": "string",
   "default": "demo",
   "description": "If no model is supplied, process the included demonstration mesh; response identifies this explicitly."
  },
  "metallic": {
   "type": "number",
   "default": 0,
   "maximum": 1,
   "minimum": 0
  },
  "roughness": {
   "type": "number",
   "default": 0.5,
   "maximum": 1,
   "minimum": 0
  },
  "resolution": {
   "type": "integer",
   "default": 256,
   "maximum": 512,
   "minimum": 128
  },
  "model_base64": {
   "type": "string",
   "maxLength": 699052,
   "description": "Optional base64 GLB (geometry and PBR values, without images/animations) or OBJ geometry, at most 512 KiB decoded. Mutually exclusive with mesh. No URLs or local paths."
  },
  "model_format": {
   "enum": [
    "glb",
    "obj"
   ],
   "type": "string",
   "default": "glb"
  },
  "target_faces": {
   "type": "integer",
   "default": 500,
   "maximum": 20000,
   "minimum": 20
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/blender-subdivide-simple-b7d91324/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from market.datapackvibe.com](https://www.zero.xyz/host/market.datapackvibe.com/llms.txt)
