Crate libredr

source ·
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:

  1. Download libredr_linux_*.tra.gz under [releases].
  2. Start server and worker using examples/scripts/{server,worker}.sh or with your own configuration.
    Example configurations are in examples/scripts. Use clinfo to verify OpenCL runtime.

§To run a server and worker under Windows:

  1. Download libredr_windows_*.tra.gz under [releases].
  2. Start server and worker using examples/scripts/{server,worker}.bat or with your own configuration.
    Example configurations are in examples/scripts.

§To run the example Python codes or your own Python code

  1. Download libredr-*.whl under [releases] and install using pip install, or install from [PyPI].
  2. Run Python example codes examples/scripts/run_example.{sh,bat} or your own client codes.

§All the examples are tested on the following platforms:

OSDeviceDriver
Debian Bullseye Linux 6.1.0-0.deb11.7-amd64CPU: Intel Core i7-8550UPoCL v1.6
Debian Bullseye Linux 6.1.0-0.deb11.7-amd64GPU: NVIDIA GeForce RTX 3090NVIDIA Proprietary v470.161.03
Windows 10 21H2 (OS Build 19044.1288)GPU: AMD Radeon RX 6700 XTAMD 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§

Functions§