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. 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). Windows and macOS are not supported.
  • GPU: an NVIDIA GPU with hardware ray tracing (RTX), and a recent NVIDIA driver with Vulkan support.
  • Python: 3.9 to 3.13, including 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/. 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.0

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.0
File
falcorcomp-0.2.0-cp313-cp313-manylinux_2_35_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.35+ x86-64 Details
falcorcomp-0.2.0-cp312-cp312-manylinux_2_35_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.35+ x86-64 Details
falcorcomp-0.2.0-cp311-cp311-manylinux_2_35_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.35+ x86-64 Details
falcorcomp-0.2.0-cp310-cp310-manylinux_2_35_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.35+ x86-64 Details
falcorcomp-0.2.0-cp39-cp39-manylinux_2_35_x86_64.whl CPython 3.9 CPython 3.9 Linux glibc 2.35+ x86-64 Details

Total release size: 295.5 MB

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

Download URL falcorcomp-0.2.0-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
7b08eff58286df8a88a2715ac99b044bf6b051387546025468e19c5691334a0b
BLAKE2b-256 checksum
How to use checksums
0ba007137f2223e002069584fd92f411daa2f7bea9e21cddf507cc4ca049d289
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.0-cp312-cp312-manylinux_2_35_x86_64.whl

Download URL falcorcomp-0.2.0-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
2a3cf90d8d2694c9c791fb01f6914356d9b7749ca43722f7da4fce4dd2606b29
BLAKE2b-256 checksum
How to use checksums
b751bafb9475e11df2965b613650fb12a8189d3a2ef9e61976d4cde28172b09b
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.0-cp311-cp311-manylinux_2_35_x86_64.whl

Download URL falcorcomp-0.2.0-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
c7562cd6285b532a1ecfc102c05574d68dbb1ab4b012587708f7f1056cb7d307
BLAKE2b-256 checksum
How to use checksums
0c22505c3e97fbb5bc8735f184efee7fd55b4ea5a581869ac63cd084b4a6d70d
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.0-cp310-cp310-manylinux_2_35_x86_64.whl

Download URL falcorcomp-0.2.0-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
39fbd26b75bfd3f052a67b40063957db751ea226db4734d553cd8ac43847ba7b
BLAKE2b-256 checksum
How to use checksums
162bf7a71a4ec4aa95525fbe84d9be74b78e1f126354c04b27e9cdcb9cd9ff76
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.0-cp39-cp39-manylinux_2_35_x86_64.whl

Download URL falcorcomp-0.2.0-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
164b812f32642bc706b03fd261ea91792db1c7a59605228d18f0569b81ff1c23
BLAKE2b-256 checksum
How to use checksums
1fe5bd093bfdcbea3955967047af6557601a6b0f1c1a52069e029de99779bb80
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

0.2.2

5 release files

This release

0.2.0 This release

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