Expand description
§LibreDR is an open-source ray-tracing differentiable renderer
[Codeberg Repo] [API Document]
LibreDR uses client-server-worker structure to better utilize multiple GPUs (or even multiple nodes on a cluster).
Some code examples are under the examples/
directory.
§To run server and worker under Linux:
- Download
libredr_linux_*.tra.gz
under [releases]. - Start server and worker using
examples/scripts/{server,worker}.sh
or with your own configuration.
Example configurations are inexamples/scripts
. Useclinfo
to verify OpenCL runtime.
§To run a server and worker under Windows:
- Download
libredr_windows_*.tra.gz
under [releases]. - Start server and worker using
examples/scripts/{server,worker}.bat
or with your own configuration.
Example configurations are inexamples/scripts
.
§To run the example Python codes or your own Python code
- Download
libredr-*.whl
under [releases] and install usingpip install
, or install from [PyPI]. - Run Python example codes
examples/scripts/run_example.{sh,bat}
or your own client codes.
§All the examples are tested on the following platforms:
OS | Device | Driver |
---|---|---|
Debian Bullseye Linux 6.1.0-0.deb11.7-amd64 | CPU: Intel Core i7-8550U | PoCL v1.6 |
Debian Bullseye Linux 6.1.0-0.deb11.7-amd64 | GPU: NVIDIA GeForce RTX 3090 | NVIDIA Proprietary v470.161.03 |
Windows 10 21H2 (OS Build 19044.1288) | GPU: AMD Radeon RX 6700 XT | AMD Proprietary v22.20.44 |
To build from source codes, check the build script for Linux in examples/scripts_unix/build/
. Docker is used to
build manylinux-compatible wheels.
Copyright (c) 2022-2024 Bohan Yu. All rights reserved.
LibreDR is free software licensed under the GNU Affero General Public License, version 3 or any later version.
Modules§
- All camera models (Rust and Python)
- All light source models (Rust and Python)
Structs§
- Rust interface for Geometry
- Rust interface for LibreDR client
- Python interface for
Geometry
- Python interface for
LibreDR
client
Functions§
- Initialize Python module.