BRL-CAD
From GPWiki
The wiki is now hosted by GameDev.NET at wiki.gamedev.net. All gpwiki.org content has been moved to the new server. However, the GPWiki forums are still active! Come say hello. 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.
[edit] FeaturesMost notable to game programming, BRL-CAD includes several features that make it useful for game development including:
[edit] PlatformsBRL-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.
[edit] ModelingBoth 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.
[edit] Tutorials[edit] Tutorials and Source Code Examples[edit] Overview[edit] Geometry Modeling KernelMost 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).
[edit] Geometry Conversion[edit] Procedural Geometry
[edit] Networking
[edit] Mathematics[edit] BRL-CAD Tutorial SeriesExtensive documentation has been written for BRL-CAD, in particular for the GUI-based geometry modeler MGED. These tutorials are designed to get modelers up to speed on how to use one of the modeling tools in BRL-CAD. [edit] Related WeblinksFor making contributions, getting support, or making feature requests: For communicating with the BRL-CAD developers and user community: Categories: Tutorial | Library | 3D | BRL-CAD | Open Source |


