Skip to content
Visualizer for large-scale and interactive ray-tracing of neurons
C++ TypeScript Python CMake Jupyter Notebook Cuda Other
Branch: master
Clone or download

Latest commit

Fetching latest commit…
Cannot retrieve the latest commit at this time.

Files

Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github/ISSUE_TEMPLATE Update issue templates Aug 9, 2018
CMake Hot colorscheme switch (#873) Apr 17, 2020
apps BraynsIBL common_application with NOHELP (#849) Oct 24, 2019
brayns Miscelaneus engine fixes: (#879) Apr 30, 2020
deps Bumping Brion version to 3.2.0 (#883) Jun 4, 2020
doc Re-add OSPRay pathtracer Apr 30, 2019
engines Miscelaneus engine fixes: (#879) Apr 30, 2020
js Release preparation Feb 26, 2019
plugins Fix restablishing accumulation frames setting properly (#886) Jun 10, 2020
python Miscelaneus engine fixes: (#879) Apr 30, 2020
scripts
tests Added Fish Eye camera to OSPRay engine (#839) Oct 9, 2019
.clang-format Move engine-specific files to new library `braynsEngine` Dec 19, 2018
.github_changelog_generator Release preparation Feb 26, 2019
.gitignore Bumping Brion version to 3.2.0 (#883) Jun 4, 2020
.gitmodules Bumping Brion version to 3.2.0 (#883) Jun 4, 2020
.gitsubprojects Bumping Brion version to 3.2.0 (#883) Jun 4, 2020
.lsan_suppressions.txt adding nvidia libs to sanitizer suppression list (#582) Sep 28, 2018
.travis.yml updating travis pypi to use bbp.opensource user (#815) Sep 4, 2019
ACKNOWLEDGMENTS.txt Add OpenGL tool `braynsIBL` for IBL map generation Jun 24, 2019
AUTHORS.txt Updated copyright and project name for Open Sourcing Jun 17, 2016
CMakeLists.txt PBRT engines integration: (#877) Apr 27, 2020
Changelog.md Updated change log (#819) Sep 13, 2019
DOCKER.md feat: add web UI Jan 22, 2019
Dockerfile Temporary fix to Dockerfile (#882) May 7, 2020
GCLOUD.md Add doc to illustrate how to run Brayns on GCP's infrastructure (#456) Jul 10, 2018
GPL.txt Updated copyright and project name for Open Sourcing Jun 17, 2016
LGPL.txt Updated copyright and project name for Open Sourcing Jun 17, 2016
LICENSE.txt Cleanups Feb 1, 2018
README.md Improve README (#776) Jun 28, 2019
docker-compose.yml feat: expose environment map in the UI Jan 23, 2019

README.md

Brayns

C++ Build Status Docker Build Status Python Build Status Read the Docs Docker Pulls GitHub release

Brayns

One of the keys towards understanding how the brain works as a whole is visualisation of how the individual cells function. In particular, the more morphologically accurate the visualisation can be, the easier it is for experts in the biological field to validate cell structures; photo-realistic rendering is therefore important.

The Blue Brain Project has made major efforts to create morphologically accurate neurons to simulate sub-cellular and electrical activities, e.g. molecular simulations of neuron biochemistry or multi-scale simulations of neuronal function. Ray-tracing can help to highlight areas of the circuits where cells touch each other and where synapses are being created. In combination with ‘global illumination’, which uses light, shadow, and depth of field effects to simulate photo-realistic images, this technique makes it easier to visualise how the neurons function.

Brayns is a minimalistic visualiser that can perform ray-traced rendering of neurons. It provides an abstraction of the underlying rendering engines, so that the best possible acceleration libraries can be used for the relevant hardware. (https://github.com/BlueBrain/Brayns.git).

To keep track of the changes between releases check the changelog.

Contact: bbp-open-source@googlegroups.com

Architecture

Architecture

User guide

Command line arguments are documented in the User Guide.

About

The following platforms and build environments are tested:

  • Linux: Ubuntu 16.04, Debian 9, RHEL 7 (Makefile, x64)

Using Docker images

Start Brayns as a service

docker run -ti --rm -p 8200:8200 bluebrain/brayns

More documentation is available on DockerHub: https://hub.docker.com/r/bluebrain/brayns/

Start the Brayns web UI

docker run -ti --rm -p 8080:8080 bluebrain/brayns-ui

More documentation is available on DockerHub: https://hub.docker.com/r/bluebrain/brayns-ui/

Building from Source

Ubuntu 18.04

To install all dependencies needed by Brayns on Ubuntu 18.04 run:

sudo apt install git cmake g++ libtbb-dev libgl1-mesa-dev libxrandr-dev \
libxinerama-dev libxcursor-dev libboost-all-dev libfreeimage-dev libglew-dev \
libwebsockets-dev libturbojpeg libturbojpeg0-dev libassimp-dev libhdf5-dev

Prerequisites

In order to ease the application compilation process, we recommend using the following tree structure:

- src
  +- ispc-v1.10.0-linux
  +- OSPRay
  +- Brayns

Intel ISPC compiler

Download and extract ISPC compiler 1.10.0 archive.

Embree

Clone embree in the same folder level as ISPC compiler

  git clone https://github.com/embree/embree.git
  mkdir embree/Build
  cd embree/Build
  git checkout v3.5.2
  cmake .. -DCMAKE_INSTALL_PREFIX=<Brayns_installation_folder>
  make install

OSPRay

Clone OSPRay in the same folder level as ISPC compiler

  git clone https://github.com/ospray/OSPRay.git
  mkdir OSPRay/Build
  cd OSPRay/Build
  git checkout v1.8.5
  export CMAKE_PREFIX_PATH=<Brayns_installation_folder>
  cmake .. -DCMAKE_INSTALL_PREFIX=<Brayns_installation_folder>
  make install

Brayns

  git clone --recursive https://github.com/BlueBrain/Brayns.git
  mkdir Brayns/Build
  cd Brayns/Build
  cmake .. -DCLONE_SUBPROJECTS=ON -DCMAKE_INSTALL_PREFIX=<Brayns_installation_folder>
  make install

A number of dependencies are optional, and are related to some specific Brayns features:

Enable/Disable OptiX

cmake .. -DOptiX_INSTALL_DIR=<OptiX_installation_folder> -DBRAYNS_OPTIX_ENABLED=On

Enable/Disable assimp supported mesh file loader (.obj, .ply, etc.)

cmake .. -DBRAYNS_ASSIMP_ENABLED=ON:OFF

Enable/Disable Brion supported morphology file loader (.h5, .swc, BlueConfig, CircuitConfig)

cmake .. -DBRAYNS_CIRCUITVIEWER_ENABLED=ON:OFF

Enable/Disable Deflect for streaming to Tide, the Tiled Interactive DisplayWall environment.

cmake .. -DBRAYNS_DEFLECT_ENABLED=ON:OFF

Enable/Disable HTTP/REST/Websockets interface.

LibJpegTurbo and Rockets. See documentation for REST API details.

cmake .. -DBRAYNS_NETWORKING_ENABLED=ON:OFF

Enable/Disable VRPN tracking plugin.

cmake .. -DBRAYNS_VRPN_ENABLED=ON:OFF

Enable/Disable optional OSPRay modules.

cmake .. -DBRAYNS_OPTIX_ENABLED=ON:OFF
cmake .. -DBRAYNS_OPENDECK_ENABLED=ON:OFF

Running Brayns viewer

export PATH=<Brayns_installation_folder>/bin:$PATH
export LD_LIBRARY_PATH=<Brayns_installation_folder>/lib:$LD_LIBRARY_PATH
braynsViewer

Running Brayns off-screen service

export PATH=<Brayns_installation_folder>/bin:$PATH
export LD_LIBRARY_PATH=<Brayns_installation_folder>/lib:$LD_LIBRARY_PATH
braynsService

Known Bugs

Please file a Bug Report if you find new issues which have not already been reported in Bug Report page. If you find an already reported problem, please update the corresponding issue with your inputs and outputs.

You can’t perform that action at this time.