{% extends "layout.html" %} {% block extrahead %} {# sphinxext-opengraph skips this page: it has no doctree, so the tags are set here. #} {% endblock %} {% block body %}
FURY is a free, open source Python library for 3D scientific visualization and animation, built on the GPU through pygfx and WebGPU. NumPy arrays in, real-time renders out.
Shaders are simple programs that describe the traits of either a vertex or a pixel. Vertex shaders describe the attributes (position, texture coordinates, colors, etc.) of a vertex, while pixel shaders describe the traits (color, z-depth and alpha value) of a pixel.
Physically based rendering (PBR) is a computer graphics approach that seeks to render images in a way that models the flow of light in the real world. Many PBR pipelines aim to achieve photorealism. This video demonstrates Anisotropic specular reflection in FURY.
A large network can be visualized by presenting its interesting parts preferably combined with one or several 'maps' in a multiview display. The main view displays a selected part in details, while the 'maps' provide the user with information about the position of the part inside the network.
This entire flight simulator — procedural terrain, a composite aircraft, flight physics, and a chase camera — is roughly 600 lines of Python, built entirely from FURY primitives and running in a real-time event loop. Read the tutorial →
The same scene graph handles whatever your field throws at it. Pick a domain for a sample render.
Robot-arm kinematics, assemblies and simulation output, animated as scene graphs.
Every entry is a runnable script from the gallery, not pseudocode.
Colored spheres on screen in ten lines of Python.
A streamline bundle filtered through a region-of-interest mask.
Diverging fields as arrows, lines and cross-section slices.
Move through 3D image volumes plane by plane.
Wrap a scene in a cube-map backdrop.
Glyph fields for orientation distribution functions.
Sliders, panels and buttons rendered inside the scene.
Embed a FURY canvas inside a PySide6 desktop app.
Extract and visualize 3D volume surfaces as meshes.
Python 3.10 or newer, on Linux, macOS or Windows.
The GPU comes through WebGPU, so there is no driver ceremony.
FURY is BSD-licensed and developed publicly. Issues, pull requests and design discussions all happen on GitHub, and the project mentors students through Google Summer of Code every year.
fury-gl/fury on GitHub ↗The maintainers and the GSoC crowd hang out on Discord. Questions about your first scene or your thousandth get answered there, and longer threads live on the mailing list.
Join the Discord server ↗If FURY supports your research, cite the JOSS paper so the work that funds it stays visible.
The wider 3D ecosystem FURY users pair it with, from DCC suites to game engines.
 }})
 }})
 }})
 }})
 }})
 }})
 }})
Development is backed by Indiana University and Google Summer of Code.
 }})
 }})
 }})