• Stars
    star
    2,401
  • Rank 18,374 (Top 0.4 %)
  • Language
    C++
  • License
    Mozilla Public Li...
  • Created about 11 years ago
  • Updated about 1 month ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

OpenVDB - Sparse volume data structure and tools

OpenVDB

OpenVDB AX Nano Houdini License CII
core ax nano hou License CII Best Practices

Website | Discussion Forum | Documentation | Releases | License | Slack

OpenVDB is an open source C++ library comprising a novel hierarchical data structure and a large suite of tools for the efficient storage and manipulation of sparse volumetric data discretized on three-dimensional grids. It was developed by DreamWorks Animation for use in volumetric applications typically encountered in feature film production.

Development Repository

This GitHub repository hosts the trunk of the OpenVDB development. This implies that it is the newest public version with the latest features and bug fixes. However, it also means that it has not undergone a lot of testing and is generally less stable than the production releases.

License

OpenVDB is released under the Mozilla Public License Version 2.0, which is a free, open source software license developed and maintained by the Mozilla Foundation.

The trademarks of any contributor to this project may not be used in association with the project without the contributor's express permission.

Contributing

OpenVDB welcomes contributions to the OpenVDB project. Please refer to the contribution guidelines for details on how to make a contribution.


Developer Quick Start

The following provides basic installation examples for the core OpenVDB library. Other components, such as the python module, OpenVDB AX, NanoVDB and various executables, may require additional dependencies. See the build documentation for help with installations.

Linux/MacOS
# Linux
# @note If your distribution does not have required versions, consider using
#   apt pinning. See the dependency documentation for more details.
apt-get install -y libboost-iostreams-dev
apt-get install -y libtbb-dev
apt-get install -y libblosc-dev

# MacOS
# @note We are using homebrew in this example to install requried dependencies
#  https://brew.sh/
brew install boost
brew install tbb
brew install c-blosc
git clone [email protected]:AcademySoftwareFoundation/openvdb.git
cd openvdb
mkdir build
cd build
cmake ..
make -j4 && make install
Windows

Note that the following commands have only been tested for 64bit systems/libraries. It is recommended to set the VCPKG_DEFAULT_TRIPLET environment variable to x64-windows to use 64-bit libraries by default. You will also require Visual Studio (for the MSVC C++ runtime and compiler toolchains), CMake and optionally vcpkg for the installation of OpenVDB's dependencies.

vcpkg install zlib:x64-windows
vcpkg install blosc:x64-windows
vcpkg install tbb:x64-windows
vcpkg install boost-iostreams:x64-windows
vcpkg install boost-any:x64-windows
vcpkg install boost-algorithm:x64-windows
vcpkg install boost-interprocess:x64-windows
git clone [email protected]:AcademySoftwareFoundation/openvdb.git
cd openvdb
mkdir build
cd build
cmake -DCMAKE_TOOLCHAIN_FILE=<PATH_TO_VCPKG>\scripts\buildsystems\vcpkg.cmake -DVCPKG_TARGET_TRIPLET=x64-windows -A x64 ..
cmake --build . --parallel 4 --config Release --target install

Building OpenVDB AX and NanoVDB

OpenVDB AX depends on the core OpenVDB library. NanoVDB can be built with and without OpenVDB support. Note that NanoVDB has its own build instructions, see the NanoVDB build documentation for details.

The following variables can be passed to the cmake configure command. There are more optional VDB components, see the build documentation for a complete list.

Option Details
-D OPENVDB_BUILD_AX=ON to enable OpenVDB AX
-D OPENVDB_BUILD_NANOVDB=ON to enable NanoVDB
-D NANOVDB_USE_OPENVDB=ON to use OpenVDB in NanoVDB

More Repositories

1

OpenShadingLanguage

Advanced shading language for production GI renderers
C++
2,012
star
2

OpenImageIO

Reading, writing, and processing images in a wide variety of file formats, using a format-agnostic API, aimed at VFX applications.
C++
1,864
star
3

MaterialX

MaterialX is an open standard for the exchange of rich material and look-development content across applications and renderers.
C++
1,713
star
4

OpenColorIO

A color management framework for visual effects and animation.
C++
1,704
star
5

openexr

The OpenEXR project provides the specification and reference implementation of the EXR file format, the professional-grade image storage format of the motion picture industry.
C
1,563
star
6

OpenTimelineIO

Open Source API and interchange format for editorial timeline information.
Python
1,362
star
7

rez

An integrated package configuration, build and deployment system for software
Python
884
star
8

OpenCue

A render management system you can deploy for visual effects and animation productions.
Python
805
star
9

xstudio

C++
596
star
10

OpenRV

Open source version of RV, the Sci-Tech award-winning media review and playback software.
C++
524
star
11

openfx

OpenFX effects API
C++
373
star
12

Imath

Imath is a C++ and python library of 2D and 3D vector, matrix, and math operations for computer graphics
C++
340
star
13

OpenPBR

Specification and reference implementation for the OpenPBR Surface shading model
CSS
292
star
14

OpenColorIO-Config-ACES

Python
242
star
15

aswf-docker

Common container configuration
Python
142
star
16

rawtoaces

RAW to ACES Utility
C++
137
star
17

aswf-landscape

🌄Landscape for popular open source projects used in the motion picture industry. This interactive landscape similar to that of the CNCF Landscape (https://l.cncf.io/) that sorts through popular open source projects used for visual effects, animation, and image creation, and shows details including GitHub stars, funding or market cap, first and last commits, contributor count and many more.
113
star
18

openexr-images

Collection of images associated with the OpenEXR distribution
93
star
19

tac

Materials and meeting notes for the ASWF Technical Advisory Council (TAC)
HTML
92
star
20

wg-usd

USD Working Group collaboration and resources
60
star
21

OpenImageIO-images

OpenImageIO test images
Shell
34
star
22

EncodingGuidelines

This site provides guidelines for encoding frames to movie files for review.
Dockerfile
25
star
23

archived-ci-management

Archived -- April 29, 2020 -- Jenkins job and cloud configuration
Shell
16
star
24

opencue.io

Source for OpenCue website
HTML
15
star
25

foundation

Academy Software Foundation foundation level resources, such as the charter, FAQ about the project, and other public assets
Python
14
star
26

openvdb-website

The source code behind https://www.openvdb.org
JavaScript
13
star
27

aswf-sample-project

ASWF Sample Project
CMake
12
star
28

wg-python3

Python 3 Working Group
12
star
29

artwork

🎨ASWF related logos and artwork
HTML
8
star
30

dpel-website

Website for the Digital Production Example Library
Astro
6
star
31

wg-ci

ASWF Continuous Integration Working Group
6
star
32

openexr-examples

Example code using the OpenEXR library
C++
5
star
33

wg-review-approval

Review and Approval WG
4
star
34

aswf-sample-wg

Repository template for a working group
3
star
35

openreviewinitiative-test

Test for CLAs for Open Review Initiative
2
star
36

materialx-website

Source files for www.materialx.org
HTML
2
star
37

openexr-website

The OpenEXR website
1
star
38

Imath-website

The Imath website
1
star
39

rez-test

1
star
40

ori-shared-platform

1
star
41

wg-assets

Asset Repository WG
1
star