Genesis 3D

Genesis 3D is a browser-based 3D editor. Its four modes cover the scene, UVs, surfaces and morphology. Associated prototypes separately explore painting, physically based rendering and playable simulations. An assistant can read the scene, write code and run it in the document's programmable layers. Born from the need for lightweight, responsive web scenes, the project has become a laboratory for behavior, learning and autonomous systems. Integrating the prototypes into the editor remains work in progress.
Genesis 3D: browser-based 3D editor demonstration. Explore the Genesis 3D browser demo and watch the scene respond to your controls.

Technical sheet

General information

Architect / Creator: David Pichot

Development: Claude Code

First files: February 2026

Development: since February 2026

Technology

Languages: JavaScript, PHP, GLSL, WGSL

Database: SQLite, JSON

Libraries: Three.js, postprocessing, three-mesh-bvh

Framework: none, no bundler, no build step

Verified scope

Web editor: scene, UVs, surface, morphology

Physical rendering: separate prototype, not yet integrated into the editor

Simulations: laboratories separate from the editor

Drone racing: 64 races and 41,062 telemetry samples recorded

Status

Project status: In development

Why build my own 3D tool?

I wanted to move directly from an idea to an interactive experiment. In a standard 3D pipeline, building the scene and defining its behavior often end up in different environments. That works perfectly for established production. It works much less well for the way I experiment.

If I wanted a fish to feel hunger, a butterfly to choose where it lands, a camera to be more or less attentive, or an opponent to learn how I drive, I needed to connect geometry, animation, perception, state, and decision directly.

Genesis 3D was built around that freedom. I can change one layer of the system while the others keep running, immediately observe what that change produces, then keep it, correct it, or remove it. The tool is not only used to build a scene. It reduces the distance between designing, testing, and understanding.

A 3D document that remains programmable

Genesis 3D brings the scene, animation, materials, interfaces, and behavioral code into a single document. An interface can be an HTML, CSS, and JavaScript widget with direct access to the 3D scene; the same code runs in the editor and then in the exported page.

This architecture makes it possible to create experiences without rebuilding an application around them. A decision system, a population of agents, or an interface can live directly with the objects they control.

Above all, it lets me choose the right mechanism for each problem. A behavior can come from an equation, a state machine, a homeostatic system, a learning algorithm, or a language model. Intelligence is not a mandatory layer: it takes the form the problem requires.

The tool became a laboratory

Genesis 3D now covers a complete creation chain: organizing a scene, unwrapping geometry, painting directly on a model, building procedural materials, animating, rendering, then exporting a playable experience.

But the most interesting features often appeared because a prototype raised a precise problem. The software feeds the experiments; the experiments then feed their solutions back into the software.

This loop is what gradually transformed Genesis 3D. The projects below are not animations prepared to illustrate the page: they are small systems running live in the browser.

AI scene assistant

The Genesis 3D assistant is not a chatbot placed beside the editor. Its agentic loop runs inside the application itself. It currently has fourteen tools to read code, modify it, run it, create or edit widgets, and inspect objects in the scene. A change can therefore be applied while the software keeps running.
Spider Walk: mechanical spider and 3D walking controls. Explore the mechanical spider in 3D, watch it walk, and use the controls or Reset to start again.
The intelligence is also in the way context is given to it. I do not send it the whole scene. I select the useful object in the tree, and Genesis 3D serializes only its relevant information: geometry, transformations, material, light, camera, or hierarchy. Context is selected by the interface rather than compensated for by an ever-larger window.

The model can then build an interface or a behavior directly inside the document. The code it produces becomes part of the scene and leaves with it on export.
Aquarium: fish swim and follow the pointer, a right-click feeds them. Move the pointer to attract the fish; right-click to feed them.

Fish with autonomous needs

The version shown here is a lighter web variation of my behavioral labs. The fish do not follow a recorded path, and no language model decides how they move.

The system is based on internal states that keep changing. Hunger, rest, safety, and social need compete with each other; the environment adds different sources of stress. Perception itself depends on that state: a target is not chosen simply because it is close, and a hungry fish may accept a situation it would have refused a few moments earlier.

Learning was then tested separately on some behaviors, using several evolutionary approaches. The results, including the failures, led to an important separation: letting the decision learn when it benefits from evolving, without necessarily handing the mechanics of the gesture over to learning.

Try it, move the mouse in the aquarium: some fish will come to inspect it. Right-click to feed them. Shift + click to scare them. Their reaction depends on their state at the moment you intervene.

AI drone race

The drone follows real flight dynamics. To move forward, it has to tilt: its thrust follows the vertical axis of its own body. Drag depends on its airspeed, yaw has inertia, and the track itself is generated for each race from curves, then turned into a three-dimensional course.

The race includes four opponents. A driving model is being studied separately using data from my own races. I recorded 64 races and 41,062 telemetry samples: speed, position, orientation, tilt, offset from the racing line, and upcoming curvature. A degree-2 polynomial regression learns three relationships between curvature and the way I fly. The resulting model finally fits into nine coefficients.

The learned model has nine coefficients, but it is not yet connected to the opponents' driving. Their current behavior relies on the prototype's racing logic: racing line, corner anticipation and lateral control.

Try it, click the video to open the race. Three laps, with the keyboard or a gamepad; with a gamepad, the handling really starts to make sense.
Ray-tracing render studio: a sculpture on a base, lit and computed frame by frame in the browser. Turn the sculpture: its lighting render is recalculated after each movement.

Adaptive WebGPU rendering

The physical renderer computes the path of light in WebGPU, directly in the browser. The constraint is strict: one sample per pixel, where an offline render can use thousands. A raw image would be almost unusable.

The answer is not to add artificial power, but to use previous frames as information. The engine reprojects the history, accumulates statistical moments of luminance, estimates variance, then adapts its filtering to the geometry and local uncertainty.

The loop then closes: the ray tracer reads the variance produced by the denoiser in the previous frame. An area that is still unstable receives more samples; an area that has already converged enough receives fewer. The system reallocates its own compute budget according to what it still estimates poorly.

This is not AI in the sense of a learned model. It is a form of architectural intelligence based on estimation, memory, and feedback.

Try it, rotate the view with the mouse. Shadows, reflections, and indirect light are recalculated while the view moves.
Wall of surveillance cameras, all pivoting together to follow the pointer. Move the pointer slowly: the cameras turn towards it, each at its own pace.

Cameras with collective attention

Each camera has its own rhythm: an individual behavior multiplier, its yaw and pitch oscillations, and small saccades that appear and fade out gradually. The two axes use deliberately desynchronized frequencies so the movement never falls back into the exact same loop.

The intelligence comes from the attention model. A camera does not switch abruptly from “I am following” to “I am not following.” Its orientation is a continuous blend between tracking a target and its own spontaneous motion. It can be highly attentive, distracted, or almost indifferent.

Each camera is also influenced by its eight neighbors. A local variation in attention can then propagate through the grid. Other excitations use a delay proportional to distance: instead of moving as one block, the wall transmits its state from neighbor to neighbor.

Try it, move the mouse inside the image. The butterflies follow your movement, and the cameras react in turn, each with its own rhythm and its own level of attention.
A robotic hand held open, blue butterflies flying around it and following the pointer. Move the pointer to guide the hand; pause and watch the butterflies approach or land.

Autonomous butterfly landing

The butterfly does not replay a landing animation. Its flight uses a Lévy walk smoothed with Catmull-Rom splines: many small moves, punctuated by larger ones. This type of distribution is used to model some search strategies observed in animals.

When it decides to return to the hand, a state machine manages the transition from flight to return, then to landing, but the trajectory is still recalculated: the finger can keep moving during the approach. The six legs are then solved with inverse kinematics and hinge constraints. Their targets are projected by raycast onto the actual finger mesh, so the feet really meet its surface.

The wings also take part in the decision. Their downward beat is reduced when the geometry indicates a risk of collision with the finger. And when several butterflies want to land, a multi-agent arbiter selects the best placed one while the others move away.

The visible intelligence therefore comes from several specialized mechanisms solving together a situation that no complete animation describes in advance.

Try it, move the finger with the mouse. The butterfly adapts its approach to the target. If it loses a stable situation, it can leave again and look for another chance to land.

When experiments return to the tool

Genesis 3D continues to evolve through this loop between tool and laboratory. The physical renderer is meant to replace the current renderer; its interface has already been designed so it can take that place.

The assistant can now understand the scene and act on the programmable layers of the document. The functions for creating and directly transforming 3D objects already exist in Genesis 3D: what remains is to expose them to it as tools.

The same logic applies to the behavioral experiments. Internal states, perception, decision, evolution, and learning were first developed in the labs so they could be observed freely. The mechanisms that hold up under experiment can then return to the editor.

The direction of the project is there: to gradually erase the boundary between the creation tool and the laboratory, so I can create a form, give it a behavior, observe what it produces, and turn that result into a new capability of the system.

Genesis 3D is my own work: twenty years of imaging and 3D, then AI, brought together in one tool. As an AI architect and creative technologist, I am looking for a role in a team working on real-time 3D, games or creative tools. Write to me.

Let's work together

Innovation grows out of collaboration. Together, let's build solutions that matter.
Owan
Hello, my name is Owan, I am David's assistant. How can I help you?
0/2000