BRL-CAD

From GPWiki
Jump to: navigation, search

BRL-CAD is a powerful cross-platform open source combinatorial Constructive Solid Geometry (CSG) solid modeling system that includes interactive solid geometry editing, ray-tracing support for rendering and geometric analysis, network-distributed framebuffer support, image and signal-processing tools, path-tracing support for realistic image synthesis, a system performance analysis benchmark suite, an embedded scripting interface, and a robust high-performance geometric representation and analysis library.

Actively developed since 1979, BRL-CAD is a collection of more than 400 tools, utilities, and applications comprising more than a million lines of source code. BRL-CAD supports a great variety of geometric representations including an extensive set of traditional CSG primitive implicit solids such as boxes, ellipsoids, cones, and tori, as well as explicit solids made from closed collections of Uniform B-Spline Surfaces, Non-Uniform Rational B-Spline (NURBS) surfaces, n-Manifold Geometry (NMG), and purely faceted mesh geometry. All geometric objects may be combined using boolean set-theoretic CSG operations including union, intersection, and difference.

The entire scope of BRL-CAD of course extends well beyond the scope of most games, but the geometry services it provides are more than capable. The ray-trace engine is used in interactive analysis environments where hundreds of thousands of rays/second may be firing to determine intersections and collision detections. The geometry modelers (MGED and Archer) both include plug-in scripting interfaces for making extensions suitable to game editors.

Features

Most notable to game programming, BRL-CAD includes several features that make it useful for game development including:

Platforms

BRL-CAD has been under active development for more than 20 years with an extensive cross-platform portability heritage. BRL-CAD supports just about every major operating system environment and is distributed as Open Source software under the LGPL.

Modeling

Both MGED and Archer are solid modelers and geometry viewers capable of displaying and manipulating geometry. There is extensive documentation available for both on the BRL-CAD website and from within the application as well. MGED is considerably more powerful, but rather complicated to master and is completely non-discoverable -- you HAVE to go through the tutorial series in order to use it proficiently.

Tutorials

Tutorials and Source Code Examples

More information about BRL-CAD
Tutorials and Source Code  »  BRL-CAD Tutorials

Having trouble getting a solution to your problem? You can get help on the community forums or IRC
Want to see something here you can't find? Try making a request on the wanted pages list!

On the Wiki

Edit this Section

Template:BRL-CAD:Tutorials:Wiki

Related

Edit this Section

Template:BRL-CAD:Tutorials:Related

External Resources

Edit this Section


Overview

Geometry Modeling Kernel

Most of BRL-CAD's power is in its extensive geometry modeling kernel, which is comprised of several notably including: libbu (basic utility), libbn (numerics), librt (ray-trace and geometry library).

Geometry Conversion

Procedural Geometry

Networking

Mathematics

BRL-CAD Documentation

Extensive documentation has been written for BRL-CAD, in particular for the GUI-based geometry modeler MGED. The overview and tutorials are designed to get modelers up to speed on how to use the various modeling tools in BRL-CAD.


Related Weblinks

For making contributions, getting support, or making feature requests:

For communicating with the BRL-CAD developers and user community:

Personal tools
Namespaces
Variants
Actions
Navigation
Toolbox