Bevy's renderer.
Python's ecosystem.
A Python real-time engine built on Bevy, with fast hot reload and an optional AI feedback loop.
The AI sees what it builds.
Write Python, save the file, and see your 3D scene update. Use NumPy, JAX, and PyTorch in the same process as a real 3D renderer. And when you want it, the AI can join the loop — it writes code, sees the result, and iterates.
Write Python
Define your scene with familiar Python — ECS systems, components, resources.
Save & Hot Reload
The engine picks up your changes instantly. No restart, no recompile.
AI Sees the Result
The AI captures a screenshot, inspects entities, and evaluates what it built.
Iterate
It writes new code, reloads, and refines. Under 2 seconds per cycle.
Write Python. Fast hot reload.
PyBevy is in an early and experimental stage. The API is incomplete, subject to breaking changes without notice, and you should expect bugs. Many features are still under development.
Why PyBevy
Fast Hot Reload
Edit your Python, save the file, see the scene update. No restart, no recompile.
Python Ecosystem In-Process
NumPy, JAX, PyTorch — just import. No IPC, no serialization layers.
Real Rendering
Bevy's PBR pipeline — shadows, bloom, volumetric fog, transmission. Not a toy renderer.
Bevy ECS in Python
Systems, queries, components, resources — if you know Bevy's Rust API, this feels familiar.
Real Rendering. Not a Toy.
Bevy's wgpu-based deferred rendering pipeline — modern GPU quality, not a software rasterizer.
PBR Materials
Physically-based rendering with metallic/roughness workflow, normal maps, and emissive materials.
Volumetric Fog
Distance and volumetric fog for atmospheric depth. Fog volumes with density textures.
Cascaded Shadows
Cascaded shadow maps for directional lights. Point and spot light shadows.
Bloom & HDR
Emissive bloom with threshold control. HDR rendering pipeline with tone mapping.
SSAO
Screen-space ambient occlusion for contact shadows and depth in tight geometry.
Transmission & Glass
Specular transmission for glass, water, and translucent materials with refraction.
Fast Enough for Real Scenes
The bottleneck in rendered scenes is draw calls, not Python system cost. For bulk simulation, Numba JIT gets you within striking distance of Rust.
With full PBR rendering pipeline active.
At the entity counts real scenes need, Python cost is sub-millisecond.
JIT-compiled hot loops close the gap for bulk simulation.
Prototype in Python, Ship in Rust
Bevy does the rendering. Python handles the logic, the data, and the ecosystem. When you need Rust performance, the native plugin mode gets you there without throwing away what you built.
Python
Rust
The Python Ecosystem, In-Process
NumPy
JAX
PyTorch
Numba
Import directly inside ECS systems. Train a model with PyTorch, run N-body physics with JAX, process arrays with NumPy — same process as the renderer.
How PyBevy Compares
Honest context. Every tool has tradeoffs.
Panda3D / Ursina
More mature Python integration, weaker rendering pipeline.
PyBevy: Modern GPU pipeline: volumetric fog, cascaded shadows, SSAO, deferred rendering.
Godot
Better visual editor and built-in physics, requires GDScript or C#.
PyBevy: Pure Python, ML ecosystem in-process, sub-2s AI iteration loop.
Three.js
Browser-native JavaScript, weaker shadow quality, no ECS.
PyBevy: True archetype ECS, PBR-quality rendering, Python ecosystem access.
Bevy (Rust)
Same architecture under the hood — PyBevy adds Python on top.
PyBevy: Faster iteration, ML ecosystem in-process, hot reload without recompile.
What's Next
Python Render Graph & GPU Post-Processing
Write render graph nodes in Python. Post-process shaders in JAX — toon shading, bloom, CRT, glitch. GPU-GPU zero-copy: read and write GPU tensors directly, no CPU round-trip.
GPU-GPU Exposed Buffers
Expose Bevy render graph buffers to JAX and PyTorch on the GPU. The bridge for real-time ML inference in the render loop.
Browser Renderer
Run scenes in the browser with shareable URLs. Embeddable via npm for your own sites.
Particles (Hanabi)
GPU particle effects via the bevy_hanabi crate — fire, smoke, sparks, trails, and custom particle behaviors.
In-Scene Agents
Agents as ECS entities that observe, decide, and act inside the running world.
Independently Developed, Community-Maintained
MIT and Apache 2.0. Help shape it.