Skip to main content

FalcorComp

FalcorComp is a GPU renderer for computational imaging, built on NVIDIA's Falcor rendering framework. It adds render passes that simulate imaging systems beyond conventional cameras — time-of-flight, modulated light, Doppler sensing and event cameras — and it is installed and used as the Python package falcorcomp. All renderers run on the GPU with hardware ray tracing, for interactive as well as offline simulation.

The package is a binary wheel for Linux and Windows. It contains Falcor, the render passes and their shaders, so no separate Falcor build is needed.

The Cornell box rendered as a standard image, a time-gated image, a transient histogram, CW-ToF and structured-light measurements, a Doppler spectrum, a Doppler-gated image, a Doppler ToF velocity map and camera events

import falcorcomp as falcor
testbed = falcor.Testbed(create_window=False)

Documentation, tutorials and the reference of every render pass: falcorcomp.readthedocs.io.

Render passes

Application Render passes
Time-gated rendering TimeGatedPathTracerInline, TimeGatedReSTIRInline
Transient rendering TransientHistogramPathTracerInline, TransientHistogramReSTIRInline
Continuous-wave ToF CWToFPathTracerInline
Structured light StructuredLightPathTracerInline
Doppler (optical heterodyne detection) DopplerGatedPathTracerInline, DopplerHistogramPathTracerInline
Doppler ToF DopplerToFPathTracerInline, VelocityGroundTruthInline (ground-truth velocity)
Event cameras EventDifference, EventSVGF, EventGenerator, with Falcor's PathTracer and SVGFPass
Utilities LaserLight, InlinePathTracer, VBufferRT/GBufferRT, AccumulatePass, TransientHistogramAccumulatePass, ToneMapper, TransientHistogramViewer, LaserPositionViewer, SplitScreenPass

Scene importers: pbrt, pyscene, Mitsuba, Assimp.

Not in the package, for license reasons: PathTracer's useRTXDI option (the RTXDI SDK's shaders cannot be redistributed in source form) and OptixDenoiser (the OptiX SDK license). Both work in a build from source.

Research

FalcorComp includes the implementations of these papers:

  • ToF ReSTIR: Time-of-Flight Rendering with Spatio-temporal Reservoir Resampling, SIGGRAPH 2026 (ACM TOG). Project page
  • Difference-aware Filtering for Event Camera Simulation, EGSR 2026 (Computer Graphics Forum). Project page
  • Geometric Antithetic Sampling for Spatiotemporally Modulated Light, SIGGRAPH Asia 2026.
  • A Monte Carlo Rendering Framework for Simulating Optical Heterodyne Detection, SIGGRAPH 2025 (ACM TOG), honorable mention. Project page
  • Doppler Time-of-Flight Rendering, SIGGRAPH Asia 2023 (ACM TOG). Project page

The BibTeX entries are in the README on GitHub.

Requirements

  • Operating system: Linux x86_64 with glibc 2.35 or newer (for example, Ubuntu 22.04 or later), or 64-bit Windows 11 (Windows 10 is untested). macOS is not supported.
  • GPU: an NVIDIA GPU with hardware ray tracing (RTX), and a recent NVIDIA driver. falcorcomp renders with Vulkan on Linux, and with Direct3D 12 on Windows, where Vulkan also works: falcor.Testbed(device_type=falcor.DeviceType.Vulkan).
  • Python: 64-bit Python 3.9 to 3.13. On Linux, also its shared library (for example, libpython3.10.so.1.0 for Python 3.10). Conda environments and most system Pythons include it; on Debian or Ubuntu, install it with sudo apt install libpython3.X for your version 3.X.

Installation

pip install falcorcomp

Creating a Testbed initializes the GPU device, so this checks the driver as well as the package:

python -c "import falcorcomp as falcor; falcor.Testbed(create_window=False); print('falcorcomp works')"

Compiled shaders are cached in ~/.cache/falcorcomp/ on Linux and in %LOCALAPPDATA%\falcorcomp\ on Windows. Set FALCOR_SHADER_CACHE_PATH to use another directory, or to an empty string to disable the cache.

License

FalcorComp is based on Falcor, which is licensed under the BSD 3-Clause license by NVIDIA (LICENSE.md). The wheel also bundles third-party components under their own licenses, including NVIDIA proprietary ones (NVTT, the CUDA runtime, RTXDI); see THIRD_PARTY_NOTICES.md and third_party_licenses/ in the installed package.

Metadata

Release files for falcorcomp 0.2.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distributions (wheels)

Table of built distributions (wheels) for falcorcomp 0.2.1
File
falcorcomp-0.2.1-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details
falcorcomp-0.2.1-cp313-cp313-manylinux_2_35_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.35+ x86-64 Details
falcorcomp-0.2.1-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
falcorcomp-0.2.1-cp312-cp312-manylinux_2_35_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.35+ x86-64 Details
falcorcomp-0.2.1-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
falcorcomp-0.2.1-cp311-cp311-manylinux_2_35_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.35+ x86-64 Details
falcorcomp-0.2.1-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
falcorcomp-0.2.1-cp310-cp310-manylinux_2_35_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.35+ x86-64 Details
falcorcomp-0.2.1-cp39-cp39-win_amd64.whl CPython 3.9 CPython 3.9 Windows x86-64 Details
falcorcomp-0.2.1-cp39-cp39-manylinux_2_35_x86_64.whl CPython 3.9 CPython 3.9 Linux glibc 2.35+ x86-64 Details

Total release size: 619.3 MB

Release files / falcorcomp-0.2.1-cp313-cp313-win_amd64.whl

Download URL falcorcomp-0.2.1-cp313-cp313-win_amd64.whl
Size 64.7 MB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
6ecbfc3474207484a8b0cb31984dbe866a3def59f247454426161516c6caad3b
BLAKE2b-256 checksum
How to use checksums
c12dfddaf89a3872be609446b253d2f7eb7da2ee0118cda366e5a5b8615392fb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.10.12

Release files / falcorcomp-0.2.1-cp313-cp313-manylinux_2_35_x86_64.whl

Download URL falcorcomp-0.2.1-cp313-cp313-manylinux_2_35_x86_64.whl
Size 59.1 MB
Tags CPython 3.13 Linux glibc 2.35+ x86-64
SHA-256 checksum
How to use checksums
096fde38d91bb17c6567c421c7739046c9490845e06ebbff976b6df80339672b
BLAKE2b-256 checksum
How to use checksums
cddb2d5ce5b1a83f2f6ecabe87b8f8cca7eb02fae802c8ee69927acc307231ca
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.10.12

Release files / falcorcomp-0.2.1-cp312-cp312-win_amd64.whl

Download URL falcorcomp-0.2.1-cp312-cp312-win_amd64.whl
Size 64.7 MB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
286e4cec693af6e9c3a95fc5ceea664f21141f79f6e496452fef9095910c21ed
BLAKE2b-256 checksum
How to use checksums
2824ecfa828b2b4c835ae31029eb9be9d7377d70670edbe9deb94298b30a66af
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.10.12

Release files / falcorcomp-0.2.1-cp312-cp312-manylinux_2_35_x86_64.whl

Download URL falcorcomp-0.2.1-cp312-cp312-manylinux_2_35_x86_64.whl
Size 59.1 MB
Tags CPython 3.12 Linux glibc 2.35+ x86-64
SHA-256 checksum
How to use checksums
8f07967bcebb212774adfed15a3a8155ba3af80bcffca979293f0357808c05b0
BLAKE2b-256 checksum
How to use checksums
cf16b2870b5bdc23a50f19169f68edd2c0522e40855d1e5d949e1cc6f5344336
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.10.12

Release files / falcorcomp-0.2.1-cp311-cp311-win_amd64.whl

Download URL falcorcomp-0.2.1-cp311-cp311-win_amd64.whl
Size 64.8 MB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
c955474c95e2c1cf9d80a3853d1219246a825485d3fc60dd6727a65b37d4868d
BLAKE2b-256 checksum
How to use checksums
b46bd7e8c9f0d7d3061f849255d3a2ba2d50a835136d36264ece08b54ae97bcc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.10.12

Release files / falcorcomp-0.2.1-cp311-cp311-manylinux_2_35_x86_64.whl

Download URL falcorcomp-0.2.1-cp311-cp311-manylinux_2_35_x86_64.whl
Size 59.1 MB
Tags CPython 3.11 Linux glibc 2.35+ x86-64
SHA-256 checksum
How to use checksums
e03989c61e6b999cb1ced0d9950f54f3778b21e5a0c3348c95f41f0d885d0142
BLAKE2b-256 checksum
How to use checksums
608651a62c03ed2be7c0fb6fe2dbcc70becb4996d9e46ad3442b399b7961ec78
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.10.12

Release files / falcorcomp-0.2.1-cp310-cp310-win_amd64.whl

Download URL falcorcomp-0.2.1-cp310-cp310-win_amd64.whl
Size 64.8 MB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
aec869c212bd3acbc694c5a3f1d53ca381a1830c21c037401e05b55230e6591a
BLAKE2b-256 checksum
How to use checksums
59800663f886417e0a0e3bfd1963efceac05564e7aece11de4be1f517a990f90
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.10.12

Release files / falcorcomp-0.2.1-cp310-cp310-manylinux_2_35_x86_64.whl

Download URL falcorcomp-0.2.1-cp310-cp310-manylinux_2_35_x86_64.whl
Size 59.1 MB
Tags CPython 3.10 Linux glibc 2.35+ x86-64
SHA-256 checksum
How to use checksums
380d2850c3ceedcd7f2307826b61cc79c307c86d8cefb37a87ee5dfee0fded0f
BLAKE2b-256 checksum
How to use checksums
c35dbdd5107890b7a033559719d5859e660aea9df5dfb567c72089c8d2590245
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.10.12

Release files / falcorcomp-0.2.1-cp39-cp39-win_amd64.whl

Download URL falcorcomp-0.2.1-cp39-cp39-win_amd64.whl
Size 64.8 MB
Tags CPython 3.9 Windows x86-64
SHA-256 checksum
How to use checksums
64a044a5dec59beff23d1a2d4bd8a1664a1225654157afd99e7cbf04487f674a
BLAKE2b-256 checksum
How to use checksums
e3a18eeb15028725623f6973785ec95e6e6994f6952360221f7a69518f2f2fb0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.10.12

Release files / falcorcomp-0.2.1-cp39-cp39-manylinux_2_35_x86_64.whl

Download URL falcorcomp-0.2.1-cp39-cp39-manylinux_2_35_x86_64.whl
Size 59.1 MB
Tags CPython 3.9 Linux glibc 2.35+ x86-64
SHA-256 checksum
How to use checksums
a87b32aa8cedecde42f19c56e82483b77e36226fd2d6db18b10c2d401426759f
BLAKE2b-256 checksum
How to use checksums
6be66104b9977e76e983003cb1b57aeabd24a4757ce94f60734e3a84de72b353
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.10.12

Release history Release notifications | RSS feed

This release

0.2.1 This release

10 release files

0.2.0

5 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page