IBRT is the Interactive BRL-CAD Ray Tracer. This repository now holds our application and our OSPRay plugins, not a vendored OSPRay source tree.
IBRT is currently beta software. Expect incomplete features and report reproducible problems through the repository's GitHub issue tracker.
apps/IBRTThe Qt desktop viewer, render worker, and test suite.plugins/brl_cadThe BRL-CAD OSPRay plugin built asospray_module_brl_cad.docsProject-specific build notes, layout notes, and performance plans.
OSPRay, Qt, Embree, rkcommon, ISPCRT, TBB, and related runtime dependencies come from an external bext install tree supplied at CMake configure time with BEXT_INSTALL_DIR. Alternatively, point BRLCAD_EXT_DIR at the bext build directory (the one holding install/ and noinstall/, as BRL-CAD does); the install tree is then BRLCAD_EXT_DIR/install.
This repo does not vendor or build OSPRay itself anymore.
You need:
- a
bextinstall tree, typically something like<bext>/.build/install - a BRL-CAD install prefix
- CMake 3.20+
- a working C++ toolchain
Example:
cmake -S . -B build/local \
-DBEXT_INSTALL_DIR=/path/to/bext/.build/install \
-DBRLCAD_PREFIX=/path/to/brlcad/install
cmake --build build/local
ctest --test-dir build/local --output-on-failureIf Qt is not part of the supplied bext install, extend CMAKE_PREFIX_PATH when configuring.
A Debug or Release IBRT build must use BRL-CAD and bext built in the same configuration; on Windows the two cannot be mixed. IBRT uses one configuration per build directory, so Debug and Release builds coexist and you switch by choosing a preset:
cmake --preset everything/Release && cmake --build --preset everything/Release
cmake --preset everything/Debug && cmake --build --preset everything/Debug # needs Debug depsEach preset builds into build/everything/<Config>. everything is shorthand
for everything/Release. A configure-time check fails fast with a clear message
if the dependencies do not match the build type.
More detail lives in docs/building.md.
IBRTandIBRTRenderWorkeruse OSPRay from the suppliedbextinstall.- The BRL-CAD plugin is built in this repo and deployed into the local runtime output for the app, worker, and tests.
- Demo BRL-CAD databases are loaded from
BRLCAD_PREFIX/share/dband copied into local viewer runtimes when available.