The model moves.
The game decides.
What a browser-native animation experiment taught us about responsiveness, physical truth, and the work surrounding a neural model.

A different kind of animation system
A character changes direction. The familiar solution is to choose an animation, blend into it, and adjust the result. MotionBricks Range asks what happens when a trained model generates the movement connecting the character’s recent past to a desired future.
NVIDIA’s MotionBricks supplies the pretrained motion model. Our experiment ports the surrounding runtime to TypeScript and connects it to a third-person shooting range. ONNX Runtime Web runs the model locally; Three.js draws the world; Rapier determines where the character can actually go.
The reference clips still matter. They provide a vocabulary of target poses and movement styles. The model synthesizes transitions between context and targets. “Generated animation” describes that division of work more accurately than the idea of a character learning to move without examples.
Two clocks, one continuous character
The development record reports roughly 45 milliseconds to generate a motion segment through WebGPU, alongside rendering around 60 frames per second on the tested desktop. Those numbers describe different clocks. The model does not run once for every frame the renderer draws.
Motion is generated ahead at 30 Hz, then sampled for playback while the next request runs asynchronously. Recent displayed poses become the context for a new generation. When that result arrives, playback accounts for the time spent waiting; it does not rewind the character to the moment the request began.
This makes scheduling part of the animation system. A plausible sequence is useful only if it still fits the character’s present position, current input, and physical surroundings.
The world gets the final say
A generated trajectory can point through a wall. The game cannot. In the implemented controller, root motion proposes a displacement and a Rapier kinematic capsule resolves what the environment permits. The actual movement is folded back into the motion history before the next generation.
That feedback loop is the architectural center of the experiment. Prediction does not become physical authority. The same principle appears in Rampart Zero’s Commander: an intelligent system can suggest or interpret an action while ordinary game systems retain responsibility for its consequences.
Player input creates another constraint. A small deterministic assist lets the capsule begin responding while a changed animation is being prepared. Too little assist feels sluggish; too much makes the feet skate. The useful solution lives in the relationship between the model, the simulation, and the player’s expectations.
Faster is not always more responsive
Shortening the generated segments looked like a direct way to reduce delay. It also left too little time for a coherent stride. The character began to shuffle. The refined locomotion keeps an 8–14-token generation window and improves responsiveness through conditioning, scheduling, and physical assistance instead.
Aimed movement needed its own target construction. A transition that looks reasonable during ordinary travel can become an awkward hop when the character strafes while facing a crosshair. Combat crouching became a procedural layer, with leg IK preserving foot placement over the generated locomotion.
The lesson extends beyond animation: minimizing one component’s latency does not necessarily improve the whole interaction. Movement has to arrive quickly enough, remain continuous, and still look like a body carrying its weight.
A moving skeleton is only the beginning
MotionBricks’ source hierarchy and the rendered operator do not share a bind pose or bone layout. Per-bone calibration maps the source motion onto the character. Reusing that retargeting layer later allowed a project-generated operator to replace the initial placeholder without retraining the model.
The character and two weapons came through an image-to-3D workflow using OpenAI reference images and Tripo meshes and rigging. That pipeline produced assets; integration still required measured grip positions, shoulder alignment, elbow constraints, and careful visual review.
Two-bone arm IK holds the weapon, procedural posing supports aiming and crouching, and the neural model carries locomotion between states. HDRI lighting, cascaded shadows, fog, retained 4K materials, and baked ambient occlusion make the result easier to judge as a game. The system works through the combination of these techniques.
A fast beginning needs an honest account
The history reports 46 minutes for the initial agent-driven browser integration. That is elapsed implementation time for a particular session, built on an existing sandbox, NVIDIA’s pretrained model, mature libraries, and an experienced developer’s direction. It is not the time required to invent the underlying technology.
The prototype then needed further work on gait, stopping, turning, weapon handling, assets, and presentation. Integration tests exercised actual model output; later regression tests examined footfall order, bounce, and response to changes in input. Visual acceptance remained necessary.
Fast implementation made the question affordable to explore. The meaningful outcome was the working system and the evidence around it: what could be reproduced, what still looked wrong, and which changes improved the experience.
The tablet that never reached the range
Desktop success did not carry over to the recorded iPad Air experiment. The browser repeatedly failed during model initialization, before gameplay. Reducing the model package from approximately 380 MB to a reported 163 MB did not produce a working tablet session.
The exact cause was not established. Download size, compilation, intermediate allocations, and browser limits are different constraints; a smaller file does not establish a smaller peak-memory workload. There is no verified working tablet version in the development record.
MotionBricks Range remains a desktop-tested research prototype. It demonstrates one practical browser integration, rather than a finished game or a universal animation SDK. Its strongest invitation is to inspect the implementation, reproduce the experiment, and ask the next precise question.
Follow the evidence.
This account draws on the project’s development history through November 2, 2026, and the public implementation. The repository began as a conventional browser physics sandbox in October 2025; the MotionBricks conversion followed in October 2026. Historical timing and performance figures have not been re-benchmarked for this feature.
Motion runtime · Physics and input assistance · Retargeting and IK · Reproduction and licensing
Application code: MIT. NVIDIA’s model weights and sample clips have separate terms; the clips are supplied for evaluation. See the repository’s licensing and asset attribution before reuse. This feature presents gameplay footage and stills, not a hosted model download.
See the experiment in motion.
The original 1080p gameplay film and a guide to the prediction display.
Speed needs direction.
What fast implementation changes—and what still needs judgment.