@genex-ai/cli-demo 1.19.0-dev.601 → 1.20.0-dev.602
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +484 -156
- package/package.json +1 -1
- package/templates/controllers/character/meshy/meshy-loader.ts +3 -2
- package/templates/skills/genex-ai-character/SKILL.md +67 -15
- package/templates/skills/genex-ai-model/SKILL.md +32 -0
- package/templates/skills/genex-game-director/SKILL.md +7 -5
- package/templates/skills/genex-threejs-character-controller/SKILL.md +2 -1
- package/templates/skills/genex-threejs-creatures/SKILL.md +8 -1
- package/templates/skills/genex-threejs-visual-validation/SKILL.md +2 -1
- package/templates/skills/genex-tool-character/SKILL.md +36 -5
- package/templates/skills/genex-tool-model/SKILL.md +16 -3
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@genex-ai/cli-demo",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.20.0-dev.602",
|
|
4
4
|
"description": "Set up your project's agent workspace (.claude/.codex/.cursor in the game folder), authorize, create a game project, generate AI assets, and publish (genex CLI).",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -23,7 +23,8 @@ export interface MeshyCharacterManifest {
|
|
|
23
23
|
characterId: string;
|
|
24
24
|
revision: number;
|
|
25
25
|
manifestVersion: number;
|
|
26
|
-
|
|
26
|
+
/** `meshy-biped`, or `uthana-biped` for a body imported with `genex character import` (same manifest shape). */
|
|
27
|
+
rig: "meshy-biped" | "uthana-biped";
|
|
27
28
|
controllerPack?: {
|
|
28
29
|
key: string;
|
|
29
30
|
version: number;
|
|
@@ -95,7 +96,7 @@ function validateManifest(value: unknown): MeshyCharacterManifest {
|
|
|
95
96
|
if (
|
|
96
97
|
!manifest ||
|
|
97
98
|
manifest.schema !== 1 ||
|
|
98
|
-
manifest.rig !== "meshy-biped" ||
|
|
99
|
+
(manifest.rig !== "meshy-biped" && manifest.rig !== "uthana-biped") ||
|
|
99
100
|
!manifest.model?.url ||
|
|
100
101
|
!manifest.model.skeletonSignature ||
|
|
101
102
|
!Array.isArray(manifest.clips) ||
|
|
@@ -101,12 +101,13 @@ they crop well to a portrait and read as one set across the cast.
|
|
|
101
101
|
npx genex character preview <concept-id> --candidate <1|2|3> --user-approved
|
|
102
102
|
```
|
|
103
103
|
|
|
104
|
-
Meshy Image-to-3D
|
|
105
|
-
front, back, left, and right views and
|
|
106
|
-
Preserve that model in R2.
|
|
107
|
-
high-detail source—is rigged and
|
|
108
|
-
the remesh directly; when the player
|
|
109
|
-
ask for their explicit approval
|
|
104
|
+
Meshy 7 Image-to-3D (Ultra, 4k textures by default) first produces an
|
|
105
|
+
unremeshed high-detail model. Show its front, back, left, and right views and
|
|
106
|
+
report its measured face count. Preserve that model in R2. A triangle remesh
|
|
107
|
+
at the face budget you approve—not the high-detail source—is rigged and
|
|
108
|
+
animated. In the default lane, proceed to the remesh directly; when the player
|
|
109
|
+
explicitly requested a custom character, ask for their explicit approval
|
|
110
|
+
first. (For the custom lane's approvals, use
|
|
110
111
|
your question tool when you have one; if you have none, a short numbered list
|
|
111
112
|
in chat.)
|
|
112
113
|
|
|
@@ -122,10 +123,10 @@ npx genex character finalize <preview-id> \
|
|
|
122
123
|
--animation <action-id>
|
|
123
124
|
```
|
|
124
125
|
|
|
125
|
-
`--animation` is repeatable. Finalization
|
|
126
|
-
|
|
127
|
-
idle/walk/run/crouch/jump controller pack, and stores the source,
|
|
128
|
-
and clips at permanent Genex asset URLs. It prints the complete Genex-credit
|
|
126
|
+
`--animation` is repeatable. Finalization creates the approved triangle
|
|
127
|
+
remesh from the Meshy 7 preview, rigs it, adds the immutable preview-reviewed
|
|
128
|
+
neutral-v3 idle/walk/run/crouch/jump controller pack, and stores the source,
|
|
129
|
+
remesh, rig, and clips at permanent Genex asset URLs. It prints the complete Genex-credit
|
|
129
130
|
quote before enqueueing. The Meshy API key remains server-side; never ask the
|
|
130
131
|
user for one or call Meshy directly from game code.
|
|
131
132
|
|
|
@@ -133,18 +134,40 @@ Meshy's public API performs automatic rigging. The manual joint-marker step
|
|
|
133
134
|
shown in Meshy Web is not exposed through that API, so do not claim that this
|
|
134
135
|
part of the hosted workflow is reproduced.
|
|
135
136
|
|
|
136
|
-
The
|
|
137
|
-
reviewed image-first path
|
|
137
|
+
The one-shot text workflow is explicit and does not masquerade as the
|
|
138
|
+
reviewed image-first path. It runs the same Meshy 7 (Ultra, 4k) — the only
|
|
139
|
+
thing it skips is the review:
|
|
138
140
|
|
|
139
141
|
```bash
|
|
140
142
|
npx genex character "compact fantasy knight" --direct-text
|
|
141
143
|
```
|
|
142
144
|
|
|
145
|
+
## The quality knobs are yours to set
|
|
146
|
+
|
|
147
|
+
Every lane runs Meshy 7 with Ultra and 4k textures unless you say otherwise,
|
|
148
|
+
and every knob is priced in the quote the command prints before enqueueing.
|
|
149
|
+
Choose per role, and say the choice in one line of chat:
|
|
150
|
+
|
|
151
|
+
- `--approve-remesh <faces>` (finalize) / `--polycount <faces>` (one shot):
|
|
152
|
+
the rigging copy's face budget, 10000-100000. **10000** for anything seen
|
|
153
|
+
in a crowd or at a distance; **20000-30000** for the player's body in a
|
|
154
|
+
third-person game; **50000+** only for a hero seen in close-up cutscenes.
|
|
155
|
+
Mobile budgets favour the low end. The number moves no cost.
|
|
156
|
+
- `--texture 2k|4k|8k` (preview / one shot): 4k is the default; 8k (+5
|
|
157
|
+
credits) only for a body the camera sits on in close-up; 2k for crowds.
|
|
158
|
+
- `--no-ultra` (preview / one shot): −5 credits and less surface detail —
|
|
159
|
+
crowd enemies and stand-ins, never the player's body.
|
|
160
|
+
- `--pose a-pose|t-pose` (one shot): the preferred rest pose; the other
|
|
161
|
+
stays the structural-QA fallback.
|
|
162
|
+
- `--height <metres>`: 0.5-3, default 1.7.
|
|
163
|
+
|
|
143
164
|
Useful options:
|
|
144
165
|
|
|
145
166
|
```bash
|
|
146
|
-
npx genex character
|
|
167
|
+
npx genex character preview <concept-id> --candidate 2 --user-approved --texture 8k
|
|
168
|
+
npx genex character finalize <preview-id> --user-approved --approve-remesh 30000 --height 1.7
|
|
147
169
|
npx genex character finalize <preview-id> --user-approved --approve-remesh 10000 --animation 466 --no-wait
|
|
170
|
+
npx genex character "market guard" --direct-text --polycount 10000 --no-ultra --texture 2k
|
|
148
171
|
npx genex wait <generation-id>
|
|
149
172
|
```
|
|
150
173
|
|
|
@@ -153,10 +176,10 @@ npx genex wait <generation-id>
|
|
|
153
176
|
compatibility path. The guided parity workflow always installs neutral-v3.
|
|
154
177
|
`--no-wait` returns a generation id for `genex wait`; it does not create a
|
|
155
178
|
second paid request. In the default lane, `--user-approved` and
|
|
156
|
-
`--approve-remesh
|
|
179
|
+
`--approve-remesh <faces>` record the pick you made and announced after showing
|
|
157
180
|
the real images. When the player explicitly requested a custom character,
|
|
158
181
|
never add `--user-approved` until they have actually seen and selected the
|
|
159
|
-
candidate, and never add `--approve-remesh
|
|
182
|
+
candidate, and never add `--approve-remesh <faces>` until they have seen the
|
|
160
183
|
four high-detail views and measured face count.
|
|
161
184
|
|
|
162
185
|
Before handoff, capture idle, walk, run, crouch-idle, crouch-move, and jump.
|
|
@@ -165,6 +188,35 @@ shrugging palms-up poses, permanently raised elbows, or a gait whose
|
|
|
165
188
|
upper-body style contradicts the requested character. “No T-pose” is not
|
|
166
189
|
an animation-quality check.
|
|
167
190
|
|
|
191
|
+
## Import a character the player already has (`character import`)
|
|
192
|
+
|
|
193
|
+
When the player hands you a humanoid mesh — their own Blender character, a
|
|
194
|
+
bought asset, an export from another tool — **import it, never regenerate
|
|
195
|
+
it**. The upload is free; Uthana then auto-rigs it (one paid call, finger
|
|
196
|
+
joints included) and it becomes a character of theirs:
|
|
197
|
+
|
|
198
|
+
```bash
|
|
199
|
+
npx genex character import ./assets/knight.glb --height 1.8
|
|
200
|
+
npx genex character animate <character-id> --locomotion --no-wait # the 16-clip walk/run set
|
|
201
|
+
npx genex controller character --character <character-id> # once locomotion lands
|
|
202
|
+
```
|
|
203
|
+
|
|
204
|
+
What Uthana needs: a **biped humanoid** in a **T- or A-pose, feet on the
|
|
205
|
+
ground, facing +Z**, as a `.glb` under **30 MB** (textures are the bulk —
|
|
206
|
+
shrink them, not the mesh). Non-biped bodies go through `npx genex model
|
|
207
|
+
import` + `npx genex model rig` (7 body plans) instead. `--no-fingers` skips
|
|
208
|
+
finger joints when the hands are blobs (Uthana warns poor finger geometry
|
|
209
|
+
lowers rig quality).
|
|
210
|
+
|
|
211
|
+
An imported character is **Uthana-rigged**: `character animate` in plain
|
|
212
|
+
words, `--locomotion` and `--video` all work on it, and the manifest reads
|
|
213
|
+
`rig: "uthana-biped"`. The Meshy catalog (`--animation <id>`) and the
|
|
214
|
+
neutral-v3 controller pack do **not** apply — those are Meshy-rig clips — so
|
|
215
|
+
run `--locomotion` before installing the controller, or the body stands
|
|
216
|
+
still. `--texture`, `--no-ultra`, `--pose` and `--polycount` are Meshy
|
|
217
|
+
generation knobs and are refused here: an import keeps the mesh exactly as it
|
|
218
|
+
is.
|
|
219
|
+
|
|
168
220
|
## Search first; use action IDs
|
|
169
221
|
|
|
170
222
|
```bash
|
|
@@ -66,6 +66,26 @@ URL passes through. The prompt becomes optional (it's recorded for the ledger,
|
|
|
66
66
|
the provider works from the image alone). A clear, single-object image on a
|
|
67
67
|
plain background converts best.
|
|
68
68
|
|
|
69
|
+
## Bring your own mesh (`model import`)
|
|
70
|
+
|
|
71
|
+
A model the player already has — a Blender export, a bought asset, a file
|
|
72
|
+
from another tool — is **imported, never rebuilt**. Importing is free and
|
|
73
|
+
makes it a model of theirs, so every id-only lane works on it: `model rig`,
|
|
74
|
+
`model animate`, `model segment`, `blender import`, and "Use in game" on the
|
|
75
|
+
dashboard.
|
|
76
|
+
|
|
77
|
+
```bash
|
|
78
|
+
npx genex model import ./assets/hero-cart.glb
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
- `.glb` only (binary glTF 2.0), up to 64 MB. A `.gltf` + `.bin` pair or an
|
|
82
|
+
FBX is exported as one `.glb` first — in Blender, File → Export → glTF 2.0
|
|
83
|
+
with format "glTF Binary".
|
|
84
|
+
- The file is checked (magic, version, triangle geometry) before the row
|
|
85
|
+
completes; a bad file is refused and nothing is charged.
|
|
86
|
+
- A humanoid that should walk goes through `$genex-ai-character`'s
|
|
87
|
+
`character import` instead — same upload, plus a Uthana auto-rig.
|
|
88
|
+
|
|
69
89
|
## Split into parts (`model segment`)
|
|
70
90
|
|
|
71
91
|
```bash
|
|
@@ -256,6 +276,18 @@ scene is a ghost: players and objects pass straight through it.
|
|
|
256
276
|
|
|
257
277
|
- `--image <path|url>` — build from a reference image (local file ≤4 MB, or a
|
|
258
278
|
generated-asset URL); the prompt becomes optional.
|
|
279
|
+
- **Quality knobs** (Tripo H3.1; each is priced in the quote, choose per
|
|
280
|
+
asset and say it in one line): `--texture standard|detailed|none` (detailed
|
|
281
|
+
is the default and +10 credits over standard; `none` is geometry only, for
|
|
282
|
+
something you texture in code), `--geometry detailed` (+20 — a hero prop
|
|
283
|
+
the camera sits on; never for a crate), `--quad` (+5, quad-dominant mesh
|
|
284
|
+
for anything you will deform or edit further; face limit ≤150000),
|
|
285
|
+
`--low-poly` (+10, smart low-poly topology — the game-ready choice for
|
|
286
|
+
props that appear in numbers), `--parts` (+20, separated named parts at
|
|
287
|
+
generation — cheaper than `model segment` when you know up front you need
|
|
288
|
+
doors, wheels, magazines), `--face-limit <n>` (1000-2000000, default
|
|
289
|
+
150000; the raw cap — the game still loads the @2048/@1024 rungs),
|
|
290
|
+
`--auto-size` (real-world metres by AI estimate).
|
|
259
291
|
- `--granularity simple|balanced|detailed` — (`model segment`) part granularity.
|
|
260
292
|
- `--type <plan>` — (`model rig`) body plan; omit to let the free rig-check pick.
|
|
261
293
|
- `--preset walk[,run,…]` — (`model animate`) clips to retarget; billed per clip.
|
|
@@ -139,6 +139,7 @@ vendored code from memory of another engine.
|
|
|
139
139
|
| stable large-world shadows, cascades, clipmaps, cached updates | `$genex-threejs-shadow-systems` |
|
|
140
140
|
| eye adaptation, tone mapping, output color, LUT grading, and proven static grain | `$genex-threejs-exposure-color-grading` |
|
|
141
141
|
| fixed-view screenshots, input direction, facing, temporal and budget evidence | `$genex-threejs-visual-validation` |
|
|
142
|
+
| **a model the player already has** — a `.glb` they exported, bought or made elsewhere: it is IMPORTED, never rebuilt. `npx genex model import <file.glb>` (free) for props and non-biped bodies (then `model rig`/`model animate`), `npx genex character import <file.glb>` for a humanoid that should walk (Uthana auto-rig, then `character animate --locomotion`) | `$genex-ai-model` · `$genex-ai-character` |
|
|
142
143
|
| the default for a concrete object the player looks at up close: a generated GLB for a prop, vehicle, building, or object — from text or a reference image (`--image`); split into named parts (`model segment`); rig + animate any mesh (`model rig` / `model animate`). A space routed to code above does NOT settle these: a village's ground plan can be code while the forge you walk up to is generated | `$genex-ai-model` |
|
|
143
144
|
| generated surface or terrain texture with real-world UV scale | `$genex-ai-texture` |
|
|
144
145
|
| sky, skybox, horizon, time of day, weather mood, night or space backdrop | build it in code in the scene—there is no sky command and no owning skill, so pick the technique this game needs |
|
|
@@ -355,13 +356,14 @@ your pick. The announced pick carries the lane:
|
|
|
355
356
|
|
|
356
357
|
`npx genex character preview <concept-id> --candidate <1|2|3> --user-approved`
|
|
357
358
|
|
|
358
|
-
Meshy Image-to-3D first produces an unremeshed high-detail model. Show its
|
|
359
|
+
Meshy 7 Image-to-3D first produces an unremeshed high-detail model. Show its
|
|
359
360
|
front, back, left, and right views and report its measured face count.
|
|
360
|
-
Preserve that model in R2.
|
|
361
|
-
|
|
362
|
-
|
|
361
|
+
Preserve that model in R2. A triangle remesh at the face budget you approve
|
|
362
|
+
(10000-100000; 10000 for crowds, 20000-30000 for a third-person player
|
|
363
|
+
body)—not the high-detail source—is rigged and animated. In the default lane,
|
|
364
|
+
the pick authorizes that remesh:
|
|
363
365
|
|
|
364
|
-
`npx genex character finalize <preview-id> --user-approved --approve-remesh
|
|
366
|
+
`npx genex character finalize <preview-id> --user-approved --approve-remesh <faces> [--animation <action-id>…]`
|
|
365
367
|
|
|
366
368
|
When the player explicitly requested a custom character, keep the existing
|
|
367
369
|
two stops: wait for their explicit candidate selection before Image-to-3D,
|
|
@@ -85,7 +85,8 @@ npx genex controller character --character <character-id>
|
|
|
85
85
|
|
|
86
86
|
Meshy Image-to-3D first produces an unremeshed high-detail model. Show its
|
|
87
87
|
front, back, left, and right views and report its measured face count. Preserve
|
|
88
|
-
that model in R2. The
|
|
88
|
+
that model in R2. The triangle remesh at the approved face budget (10,000
|
|
89
|
+
by default; up to 100,000 for a hero)—not the high-detail
|
|
89
90
|
source—is rigged and animated. In the default lane proceed to it directly;
|
|
90
91
|
for a player-requested custom character, ask for their explicit approval
|
|
91
92
|
first (question tool when you have one; a short numbered list in chat
|
|
@@ -29,6 +29,10 @@ the rig). Route by silhouette:
|
|
|
29
29
|
locomotion clips for exactly the shapes Meshy refuses — see
|
|
30
30
|
`$genex-ai-model` for the full flow, presets, and honest limits (avian rigs
|
|
31
31
|
have no preset clips; drive those bones in code).
|
|
32
|
+
- **A mesh the player already has** (their own creature file): `npx genex
|
|
33
|
+
model import <file.glb>` first — free — then the same routing by
|
|
34
|
+
silhouette: biped → `npx genex character import` (Uthana auto-rig),
|
|
35
|
+
anything else → `npx genex model rig`. Never rebuild what they handed you.
|
|
32
36
|
- **Everything outside both** (swarms, blobs, amorphous things — no body plan
|
|
33
37
|
to rig): the **static + procedural lane** — `npx genex model` for the body,
|
|
34
38
|
motion authored in code. Say it honestly in the Assets table:
|
|
@@ -53,7 +57,10 @@ npx genex creature "hulking bone seraph, tattered wing membranes, upright stance
|
|
|
53
57
|
```
|
|
54
58
|
|
|
55
59
|
Each creature is one Assets-table row (visible spend — the usual budget
|
|
56
|
-
rules).
|
|
60
|
+
rules). It runs Meshy 7 like the player body; the knobs are yours: a crowd
|
|
61
|
+
enemy is `--polycount 10000 --no-ultra --texture 2k`, a boss seen in close-up
|
|
62
|
+
`--polycount 30000` (`--texture 8k` if the camera lingers), `--pose t-pose`
|
|
63
|
+
when a rig keeps failing structural QA in a-pose. The result is a rigged GLB whose clips play on a standard
|
|
57
64
|
`THREE.AnimationMixer`; Meshy limb rotations play unchanged — never apply
|
|
58
65
|
post-mixer limb corrections. Prompt the body UPRIGHT and unpropped (held
|
|
59
66
|
props fuse into bodies); prompt "facing the viewer" but never trust it —
|
|
@@ -37,7 +37,8 @@ overlapping props or straps can fuse into the character or hide a limb.
|
|
|
37
37
|
|
|
38
38
|
Meshy Image-to-3D first produces an unremeshed high-detail model. Show its
|
|
39
39
|
front, back, left, and right views and report its measured face count. Preserve
|
|
40
|
-
that model in R2. The
|
|
40
|
+
that model in R2. The triangle remesh at the approved face budget (10,000
|
|
41
|
+
by default; up to 100,000 for a hero)—not the high-detail
|
|
41
42
|
source—is rigged and animated. In the default lane the remesh proceeds
|
|
42
43
|
directly; for a player-requested custom character, wait for their explicit
|
|
43
44
|
approval first (question tool when you have one; a short numbered list in
|
|
@@ -24,13 +24,28 @@ npx genex character preview <concept-id> --candidate 2 --user-approved
|
|
|
24
24
|
# → a 3D preview of that one, four views. Show it; wait for approval.
|
|
25
25
|
|
|
26
26
|
npx genex character finalize <preview-id> --user-approved --approve-remesh 10000
|
|
27
|
-
# → the rigged, game-ready character.
|
|
27
|
+
# → the rigged, game-ready character at that face budget.
|
|
28
28
|
```
|
|
29
29
|
|
|
30
30
|
Each step needs the previous step's generation id. The approval flags are not
|
|
31
31
|
ceremony: they record that a person actually looked and chose, and each step
|
|
32
32
|
costs credits.
|
|
33
33
|
|
|
34
|
+
## The knobs (Meshy 7 on every lane)
|
|
35
|
+
|
|
36
|
+
Ultra and 4k textures are the defaults; every knob is priced in the quote.
|
|
37
|
+
Pick per role and say so in one line:
|
|
38
|
+
|
|
39
|
+
- `--approve-remesh <faces>` (finalize) / `--polycount <faces>` (one shot):
|
|
40
|
+
the rigging copy's face budget, 10000-100000 — 10000 for crowds and
|
|
41
|
+
distance, 20000-30000 for a third-person player body, 50000+ only for a
|
|
42
|
+
close-up hero. Moves no cost.
|
|
43
|
+
- `--texture 2k|4k|8k` (preview / one shot): 8k is +5 credits, for close-ups.
|
|
44
|
+
- `--no-ultra` (preview / one shot): −5 credits, less surface detail — stand-ins
|
|
45
|
+
and crowd enemies.
|
|
46
|
+
- `--pose a-pose|t-pose` (one shot): the preferred rest pose.
|
|
47
|
+
- `--height <metres>`: 0.5-3, default 1.7.
|
|
48
|
+
|
|
34
49
|
## One shot
|
|
35
50
|
|
|
36
51
|
When nobody is choosing — a background NPC, a quick test:
|
|
@@ -41,7 +56,21 @@ npx genex creature "hulking bone seraph, upright stance"
|
|
|
41
56
|
```
|
|
42
57
|
|
|
43
58
|
`creature` is the same lane with enemy defaults: no approval steps, no player
|
|
44
|
-
controller pack. Biped-shaped bodies only.
|
|
59
|
+
controller pack (and priced without one). Biped-shaped bodies only. The knobs
|
|
60
|
+
above apply: a crowd enemy is `--polycount 10000 --no-ultra --texture 2k`.
|
|
61
|
+
|
|
62
|
+
## Import a character the user already has
|
|
63
|
+
|
|
64
|
+
```bash
|
|
65
|
+
npx genex character import ./knight.glb --height 1.8 # free upload + Uthana auto-rig (finger joints; --no-fingers skips them)
|
|
66
|
+
npx genex character animate <id> --locomotion # then the walk/run set — an import has no clips yet
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
Biped humanoid, T- or A-pose, feet on the ground, facing +Z, `.glb` ≤ 30 MB.
|
|
70
|
+
**Never rebuild a mesh the user gives you** — import it. The result is a
|
|
71
|
+
Uthana-rigged body: verbs, `--locomotion` and `--video` work; the Meshy
|
|
72
|
+
catalog and controller pack do not. Non-biped bodies: `npx genex model
|
|
73
|
+
import` + `npx genex model rig`.
|
|
45
74
|
|
|
46
75
|
## Animating it
|
|
47
76
|
|
|
@@ -75,9 +104,11 @@ look here first — a library clip costs nothing to generate.
|
|
|
75
104
|
|
|
76
105
|
## Cost
|
|
77
106
|
|
|
78
|
-
Typical: **
|
|
79
|
-
character · **
|
|
80
|
-
|
|
107
|
+
Typical: **32** concept · **41** preview · **29** finalize · **64** one-shot
|
|
108
|
+
character · **46** creature · **18** import (Uthana auto-rig; the upload is
|
|
109
|
+
free) · **46 per clip** for a generated move · **free** for a library search
|
|
110
|
+
(1 credit = $0.01). `--texture 8k` adds 6, `--no-ultra`
|
|
111
|
+
takes 6 off. Live prices and your balance: `npx genex doctor`.
|
|
81
112
|
|
|
82
113
|
## Waiting
|
|
83
114
|
|
|
@@ -21,6 +21,17 @@ npx genex model --image ./reference-photo.jpg # build it FROM an image; pr
|
|
|
21
21
|
Blocks until ready, saves the GLB into `./assets`, and prints the path. Wire the
|
|
22
22
|
local path; the URL printed beside it is provenance, not hosting.
|
|
23
23
|
|
|
24
|
+
## Bring your own mesh
|
|
25
|
+
|
|
26
|
+
```bash
|
|
27
|
+
npx genex model import ./hero-cart.glb # free — a file you already have becomes a model of yours
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
`.glb` only, ≤ 64 MB (export a `.gltf`/FBX as one binary `.glb` first). The
|
|
31
|
+
import is free and checked before it completes; after it, `segment`, `rig`,
|
|
32
|
+
`animate` and `character import` all take its id. **Never rebuild a mesh the
|
|
33
|
+
user hands you** — import it.
|
|
34
|
+
|
|
24
35
|
## Mesh lanes
|
|
25
36
|
|
|
26
37
|
Each takes the **generation id** of a previous model — never a URL.
|
|
@@ -38,15 +49,17 @@ npx genex model animate <rig-id> --preset walk,run
|
|
|
38
49
|
## Options
|
|
39
50
|
|
|
40
51
|
- `--image <path|url>` — build the model from a reference image (local file ≤ 4 MB, or a previous generation's URL). The prompt becomes optional.
|
|
52
|
+
- **Quality knobs** (Tripo H3.1, each priced in the quote — pick per asset, say it in one line): `--texture standard|detailed|none` (detailed default, +10 over standard; none = geometry only), `--geometry detailed` (+20, hero pieces only), `--quad` (+5, for meshes you will edit; face limit ≤150000), `--low-poly` (+10, game-ready topology for props in numbers), `--parts` (+20, named parts at generation), `--face-limit <n>` (1000-2000000, default 150000), `--auto-size` (real-world metres).
|
|
41
53
|
- `--out-dir <dir>` — where the file lands (default `./assets`).
|
|
42
54
|
- `--no-download` — print the URL only.
|
|
43
55
|
- `--no-wait` — enqueue and return; pick it up with `npx genex wait <id>`.
|
|
44
56
|
|
|
45
57
|
## Cost
|
|
46
58
|
|
|
47
|
-
From **35 credits** a model (**46** from a reference image
|
|
48
|
-
**
|
|
49
|
-
|
|
59
|
+
From **35 credits** a model (**46** from a reference image; `--texture standard`
|
|
60
|
+
**23**, `--geometry detailed` **58**, `--low-poly` **46**, `--parts` **58**) ·
|
|
61
|
+
**46** segment · **29** rig · **12 per clip** for animate (1 credit = $0.01).
|
|
62
|
+
Live prices and your balance: `npx genex doctor`.
|
|
50
63
|
|
|
51
64
|
## Waiting
|
|
52
65
|
|