Creating simple C++ OpenVDB node in HDK

In this post post I will describe how to write a simple Houdini node operating on VDB volumes. It is a result of my recent HDK explorations and the purpose of the node is to activate voxels in VDB volume based on input points. Right now it is not possible to activate a voxel at certain position in a VDB volume through VEX and VDB Activate node does not take as input points positions (it will activate voxels within bounding box if geometry is fed into the second input). I will try to describe the process as simple as possible, so even if you do not have much experience with C++ hopefully you will be able to follow along 🙂

Continue reading “Creating simple C++ OpenVDB node in HDK”

Advertisements
Creating simple C++ OpenVDB node in HDK

Compiling DreamWorks OpenVDB C++ nodes for Houdini on Linux

In this post I will describe a process of compiling DreamWorks OpenVDB nodes. Official DreamWorks nodes have a bit more functionality and are sometimes really useful. Even though Houdini OpenVDB nodes cover most of the functionality of the DreamWorks nodes, it might be useful to have both sets of nodes at hand. In this post I will describe how to build the nodes using existing precompiled OpenVDB library shipped with Houdini. By doing so we do not need to build the OpenVDB core (and all its dependencies) ourselves but we take can take advantage of the one coming with Houdini.

Continue reading “Compiling DreamWorks OpenVDB C++ nodes for Houdini on Linux”

Compiling DreamWorks OpenVDB C++ nodes for Houdini on Linux

Compiling C++ OpenVDB Hello World example using Houdini libraries on Linux

In this post I will describe a process of compiling Hello World example from OpenVDB library. I will take the first example from OpenVDB Cookbook. However instead of building the whole OpenVDB library I will take advantage of precompiled OpenVDB library shipping with Houdini. In this post I will assume that you have at least very basic understanding of compiling process.

Continue reading “Compiling C++ OpenVDB Hello World example using Houdini libraries on Linux”

Compiling C++ OpenVDB Hello World example using Houdini libraries on Linux

Artistic style transfer setup guide

In this post I will explain how to set up a linux environment for running style transfer implementations from GitHub repositories. I assume that you have a Nvidia GPU, linux distribution and a working knowledge of linux. If you get into any troubles, just drop me a line. It was done as a part of my studies at Filmakademie Baden-Wuerttemberg.

There are many implementations on a GitHub and here I will show how to make the three of them working (which I had previously tested and used):

Here you can check some tests and results which I did with those three implementations.

  • mtx2_low full image
    • In the columns different implementations are used (in the same order as in the list above), the rows are using different styles.
  • mtx_lowfull image
    • I also tested the last implementation with a CG rendering, here you can see comparison of different rendering output vs different styles (renderings by Kiana Naghshineh)

Continue reading “Artistic style transfer setup guide”

Artistic style transfer setup guide

USD setup & evaluation notes

In this post I will publish summary of setting up and fiddling a bit with Universal Scene Description (USD) on Linux. It will mostly contain my understanding of the concepts behind USD and a compilation guide for Ubuntu based OS.

Originally I wrote this article for an assignment during my Technical Directing studies at Filmakademie Baden-Wuertemmberg. Parts regarding compiling Maya plugin for USD were written by Tim Lehr.

usd_pipeline

Continue reading “USD setup & evaluation notes”

USD setup & evaluation notes

Shaping particle simulations with interaction forces in Houdini

In this post I will try to explain principles behind implementation of the research paper Shaping particle simulations with interaction forces published by DreamWorks in 2014.
This technique allows us to create forces on particles which can result in variety of interesting motions, one of them resembling water behavior. This approach is more efficient than complex liquid simulations since it does not include volumetric operations (as in FLIP solvers for example) and is also easy to control and to combine with any other particle forces. I did this implementation in Houdini and VEX, but principles apply to any other software.

 

Continue reading “Shaping particle simulations with interaction forces in Houdini”

Shaping particle simulations with interaction forces in Houdini