↓ Skip to main content
  1. Projects/

Barney

Barney is a C++ library dedicated to import, simulation and fracture of 3D meshes.

Barney depends on numerous external libraries to function. These libraries are written in C++ to facilitate their integration within Barney.

Technologies
#

Import
#

Barney needs to be compatible with many 3D formats, from simple OBJ files to complex building models in IFC documents.

Assimp processes over 40 file formats in a single unified data structure for easier use of meshes and information within the document.

Simulation
#

Many physics engines are available online. It is important efficiently compare several of them to find the most appropriate engine for Barney.

Project Chrono is an open-source physics engine in active development offering simulations matching real life parameters.

Its Multicore module speeds up simulation of busy scenes by taking advantage of the parallel computations capabilities of the processor.

Fragmentation
#

In video games and movies, it is frequent to see buildings blown up, broken class or other destruction requiring to fragment a 3D model. Barney does unpredictable simulations in real time. It’s therefore required to be able to fracture meshes on the fly.

The libraries Voro++ and MCut have been chosen to perform these tasks:

  • Voro++ generates Voronoi cells in a bounding box surrounding the mesh to fracture,
  • MCut calculates the intersection between each cell and the mesh

This gives the illusion of a realistically fractured mesh.

Features
#

Barney can be used in two ways: as a third party library, or in a standalone mode.

Library
#

Many game engines (like Unity or Unreal Engine) allow integrating plug-ins or third party dependencies.

As such, Barney can be used as depenency to replace the built-in physics engine.

Standalone
#

A built-in visualization system made with Irrlicht has been implemented to visualize the simulation in real time, without the need for external software to integrate into.

This allows the creation of an executable test suite, speeding up development of Barney.