@genex-ai/cli-demo 0.71.0 → 0.74.0-dev.190
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 +354 -8
- package/package.json +2 -1
- package/templates/controllers/character/follow-camera.ts +15 -4
- package/templates/controllers/character/vrm/vrm-loader.ts +74 -11
- package/templates/controllers/quality/governor.ts +147 -0
- package/templates/controllers/quality/pick-asset.ts +57 -0
- package/templates/controllers/quality/tier.ts +170 -0
- package/templates/skills/genex-ai-hud/SKILL.md +11 -2
- package/templates/skills/genex-ai-menu/SKILL.md +18 -2
- package/templates/skills/genex-ai-skybox/SKILL.md +15 -4
- package/templates/skills/genex-ai-texture/SKILL.md +1 -1
- package/templates/skills/genex-ai-video/SKILL.md +1 -1
- package/templates/skills/genex-explore/SKILL.md +1 -1
- package/templates/skills/genex-getting-started/SKILL.md +2 -2
- package/templates/skills/genex-threejs-adaptive-quality/SKILL.md +141 -0
- package/templates/skills/genex-threejs-adaptive-quality/references/adaptive-quality.md +105 -0
- package/templates/skills/genex-threejs-bloom/SKILL.md +4 -1
- package/templates/skills/genex-threejs-bloom/references/bloom.md +1 -1
- package/templates/skills/genex-threejs-camera-direction/SKILL.md +62 -12
- package/templates/skills/genex-threejs-camera-direction/references/camera-rigs.md +62 -0
- package/templates/skills/genex-threejs-character-controller/references/wiring.md +9 -3
- package/templates/skills/genex-threejs-embed-auth/SKILL.md +4 -1
- package/templates/skills/genex-threejs-game-feel/SKILL.md +4 -1
- package/templates/skills/genex-threejs-game-ui/SKILL.md +113 -30
- package/templates/skills/genex-threejs-game-ui/references/style-capsules.md +4 -1
- package/templates/skills/genex-threejs-image-pipeline/SKILL.md +5 -0
- package/templates/skills/genex-threejs-image-pipeline/references/image-pipeline.md +1 -1
- package/templates/skills/genex-threejs-lighting-design/SKILL.md +5 -1
- package/templates/skills/genex-threejs-multiplayer/SKILL.md +7 -1
- package/templates/skills/genex-threejs-multiplayer/references/host-physics.md +6 -3
- package/templates/skills/genex-threejs-physics-rapier/references/colliders-from-assets.md +1 -0
- package/templates/skills/genex-threejs-screen-space-ambient-occlusion/references/ambient-occlusion.md +1 -1
- package/templates/skills/genex-threejs-shadow-systems/SKILL.md +6 -0
- package/templates/skills/genex-threejs-shadow-systems/references/shadow-systems.md +1 -1
- package/templates/skills/genex-threejs-skill-router/SKILL.md +26 -5
- package/templates/skills/genex-threejs-skill-router/references/routing-map.md +25 -9
- package/templates/skills/genex-threejs-spectral-ocean/references/spectral-ocean.md +1 -1
- package/templates/skills/genex-threejs-touch-controls/SKILL.md +11 -0
- package/templates/skills/genex-threejs-vehicle-controllers/references/enter-exit.md +7 -0
- package/templates/skills/genex-threejs-visual-validation/SKILL.md +36 -12
- package/templates/skills/genex-threejs-water-optics/references/water-optics.md +1 -1
- package/templates/skills/genex-updates/SKILL.md +1 -1
|
@@ -72,9 +72,17 @@ everything twice.
|
|
|
72
72
|
skill's "Self-testing a draft" section) — so you see the game, not the
|
|
73
73
|
sign-in gate.
|
|
74
74
|
2. Press each documented control once (keys, pointer); assert a **visible
|
|
75
|
-
response
|
|
76
|
-
|
|
77
|
-
|
|
75
|
+
response in its labeled direction** — this is the input-direction pass, and
|
|
76
|
+
it is part of THIS check, not an extra testing loop. Hold `KeyD`/ArrowRight
|
|
77
|
+
~0.5s and screenshot-diff: the controlled thing moves or turns toward
|
|
78
|
+
screen-RIGHT (for a pan camera the viewport slides right — the terrain
|
|
79
|
+
streams LEFT); `KeyA`/ArrowLeft mirrors it. Keyboard synthesis needs no
|
|
80
|
+
pointer lock, so this works headless. For drag rigs, drag right AND drag up:
|
|
81
|
+
both axes must follow the one stated convention (grab-the-world or
|
|
82
|
+
move-the-camera — never one each). A response in the WRONG direction is a
|
|
83
|
+
fail, not a note: two shipped games passed "controls respond" while D
|
|
84
|
+
steered screen-left. For an animated character, capture idle, walk, run,
|
|
85
|
+
crouch-idle, crouch-move, and jump. Inspect shoulders, elbows, wrists, and hands as well
|
|
78
86
|
as the feet: a fully bound non-T-pose can still be stylistically broken.
|
|
79
87
|
Reject shrugging palms-up poses, permanently raised elbows, or a gait whose
|
|
80
88
|
upper-body style contradicts the requested character. “No T-pose” is not
|
|
@@ -104,16 +112,24 @@ everything twice.
|
|
|
104
112
|
floating above detached wheels means the model was box-fit against the
|
|
105
113
|
preset's wheelbase (the vehicle skill's "Custom generated bodies" rules
|
|
106
114
|
fix it).
|
|
107
|
-
6.
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
115
|
+
6. The cursor pass — every game, per the lock-or-tool rule: during play the OS
|
|
116
|
+
cursor is either the gameplay tool (cursor-core — confirm the explicit
|
|
117
|
+
`pointerLockAim: false` opt-out, cursor stays) or it is LOCKED away; a
|
|
118
|
+
non-cursor-core game with the arrow parked over the action is a defect, even
|
|
119
|
+
a keyboard-only racer. Aim games additionally: click the canvas and assert
|
|
120
|
+
the pointer locks (cursor gone, mouse-RIGHT turns the view RIGHT and
|
|
121
|
+
mouse-UP looks UP — name BOTH axes; yaw-only evidence has let inverted pitch
|
|
122
|
+
ship); press Esc and assert the "click to aim/resume" cue appears. The cue
|
|
123
|
+
should be the bundled `createAimCue` helper (or an equivalent
|
|
112
124
|
`onAimChange`-driven overlay) — a MANDATORY-bucket game with no unlocked cue
|
|
113
|
-
fails.
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
125
|
+
fails. Games with a menu additionally: on the main menu, click one item that
|
|
126
|
+
does NOT start play (Settings/Options/Credits) — the cursor must remain
|
|
127
|
+
visible; the lock may only ever engage from the Play/Resume click or a
|
|
128
|
+
gameplay canvas click (the phase binding `setPaused(phase !== "playing")` is
|
|
129
|
+
what guarantees this — check it rides `setPhase`, not the render loop).
|
|
130
|
+
Headless caveat: `requestPointerLock` throws in headless Chromium —
|
|
131
|
+
assert the wiring and the unlocked cue in a screenshot, and say plainly that
|
|
132
|
+
the lock itself needs one manual click (do the both-axes look check there).
|
|
117
133
|
7. **Ask the scene the three things the screenshot cannot answer** (below). Run it
|
|
118
134
|
once, in the same browser you already have open.
|
|
119
135
|
|
|
@@ -279,6 +295,14 @@ visual-system work — the sequence above.
|
|
|
279
295
|
|
|
280
296
|
- a MANDATORY-bucket aim game never requests pointer lock, or locks with no
|
|
281
297
|
visible unlocked cue;
|
|
298
|
+
- a movement key or look axis whose on-screen direction contradicts its label
|
|
299
|
+
(D turning the vehicle screen-left, mouse-up looking down with no invert
|
|
300
|
+
option);
|
|
301
|
+
- drag-pan axes that mix conventions (one axis grab-the-world, the other
|
|
302
|
+
move-the-camera);
|
|
303
|
+
- a non-cursor-core game that leaves the OS cursor visible during play;
|
|
304
|
+
- a menu or settings click locks the pointer (or the cursor vanishes) while a
|
|
305
|
+
menu screen is still up;
|
|
282
306
|
- approval relies on a single frame;
|
|
283
307
|
- post-processing cannot be disabled per pass;
|
|
284
308
|
- random seeds are not reproducible;
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Use this reference for bounded or analytic water with shared displacement and normals, derivative-filtered detail, analytic reflection, heuristic refraction, absorption, and crest foam. Use `$genex-threejs-spectral-ocean` for stochastic FFT seas.
|
|
4
4
|
|
|
5
|
-
> **Renderer note:** this reference assumes `WebGPURenderer` + TSL node materials. Check the project's actual renderer first — the Genex scaffold ships vanilla WebGL three.js. On WebGL, adapt the technique with standard materials / `EffectComposer` passes or pick a simpler alternative; never switch renderers mid-project.
|
|
5
|
+
> **Renderer note:** this reference assumes `WebGPURenderer` + TSL node materials. Check the project's actual renderer first — the Genex scaffold ships vanilla WebGL three.js. On WebGL, adapt the technique with standard materials / `EffectComposer` passes or pick a simpler alternative; never switch renderers mid-project. Either way the effect obeys the device tier (`$genex-threejs-adaptive-quality`): expensive passes are desktop-tier, and on WebGPU the per-target MSAA sample count is a runtime knob the governor may drive.
|
|
6
6
|
|
|
7
7
|
## Contents
|
|
8
8
|
|
|
@@ -38,7 +38,7 @@ update, so update immediately.)
|
|
|
38
38
|
Run exactly the command the nudge printed, from the game project root:
|
|
39
39
|
|
|
40
40
|
```bash
|
|
41
|
-
npm i -D @genex-ai/cli-demo@
|
|
41
|
+
npm i -D @genex-ai/cli-demo@dev # the genex CLI (a dev dependency)
|
|
42
42
|
npm i @genex-ai/embed-sdk@latest # identity/saves SDK (ships inside the game)
|
|
43
43
|
npm i @genex-ai/multiplayer@latest # multiplayer SDK (only if the game uses it)
|
|
44
44
|
```
|