Chair mass
— kgdensity supplied with the jobMeasured geometry in. Verifiable physics out.
Make a GLB ready for physics—without asking an AI to guess.
Rupa3D audits geometry, builds a measured collider, and can add real-scale mass, inertia, and a tested resting pose. Every result carries a Proof Profile your receiver can recompute.
Technical preview · authorized API access · checkout coming soon
Output from our own machine-made asset
One hull hides empty space. Decomposition gets closer—and still faces the gate.
Both images use a table assembled from our own boxes. Every value and verdict below is loaded from the actual local engine output, and both colliders are judged by the same gate. When a result misses it, the page says so.

- Collider / mesh volume
- Loading…×
- Max gap, collider → mesh
- Loading…% of diagonal
- Gate
- ≤ Loading…% of diagonal
- Measured reason
- Loading…

- Convex parts
- Loading…
- Collider / mesh volume
- Loading…×
- Max gap, collider → mesh
- Loading…% of diagonal
- Gate
- ≤ Loading…% of diagonal
- Measured reason
- Loading…
Inertia tensor diagonal
—kg·m²Resting-pose edge margin
— manalytic support + Rapier dropCollider in this physics-ready chair output: Loading… Loading…. The gate is a request parameter (default shown above); a looser gate is recorded in the proof, never applied silently.
A short, inspectable chain
Upload → job → evidence you recompute
Upload one GLB
Binary upload only. The server never fetches a user URL.
Choose an operation
Audit, collider, or a physics-ready output with an explicit scale and density.
Verify at the receiver
Re-run every claim against the delivered GLB. A one-byte BIN mutation changes the canonical fingerprint.
Quickstart
REST in two calls
Set RUPA3D_API_URL to https://api.migan3d.com and supply your authorized key. For local development, use http://127.0.0.1:8787. No key is embedded here.
curl -H "Authorization: Bearer $RUPA3D_API_KEY" \
-H "Content-Type: application/octet-stream" \
--data-binary @model.glb \
"$RUPA3D_API_URL/v1/aset"
curl -H "Authorization: Bearer $RUPA3D_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: buyer-order-0001" \
-d '{"aset_id":"aset_...","operasi":"siap_fisika","parameter":{"meter_per_unit":1,"kerapatan_kg_m3":700}}' \
"$RUPA3D_API_URL/v1/job"Remote MCP
Use the same metered operation from an MCP client
The technical preview endpoint is https://mcp.migan3d.com/mcp. Supply your authorized key; public checkout is not enabled.
{
"mcpServers": {
"rupa3d": {
"type": "streamable-http",
"url": "https://mcp.migan3d.com/mcp",
"headers": {
"Authorization": "Bearer ${RUPA3D_API_KEY}"
}
}
}
}Simple credits
Pay for the operation, not a subscription tier
Starter
$950 creditsBuilder
$29250 creditsStudio
$791,000 credits| Operation | Credits | What it returns |
|---|---|---|
| Audit | 1 | Geometry measurements + Proof Profile |
| Collider | 3 | Single hull or VHACD decomposition + proof |
| Physics-ready | 5 | Scale, collider, mass/inertia when closed, resting pose + proof |
Checkout
No Polar link is configured yet. Separate links will be used for each launch channel so attribution remains auditable.
Honest limits
What the API will not pretend to know
- No scale guessing. Supply metres per unit, a known dimension, or a convincing measured class.
- Mass and inertia require closed meshes. Open geometry gets no invented mass.
- VHACD is deterministic on the tested platform. Cross-platform bit identity is not promised.
- No AI. This slice processes buyer-owned geometry; it does not generate meshes.
- Finite measurements. Surface sampling and Monte Carlo union volume have recorded bounds and error.
Privacy by deletion
Inputs and results are deleted after 24 hours.
The service stores only what is needed to process and retrieve a job. An append-only verification log keeps hashes and claim verdicts—not the model itself. No third-party tracker, analytics script, remote font, or advertising pixel is present on this site.
Loading measured proof excerpt…FAQ
Before you spend a credit
Does Rupa3D fix arbitrary broken meshes?
No. Audit reports what it can measure. Physics-ready mass is withheld when the measured primitives are not closed.
Can I verify a result without trusting your database?
Yes. The delivered GLB embeds the claim inputs and recomputation recipes. The receiver runs the frozen verifier against that file.
Is checkout live?
No. The page reads channel-specific checkout configuration; empty configuration stays visibly “Coming soon.”
How do I ask a technical question?
Email fahmiwol@gmail.com. This public contact address is intentional.