Houdini 2 VR

I would like to share with you a tool I have been developing lately – Houdini 2 VR.

Currently Houdini doesn’t have a tool for previewing (stereo/mono) VR renders in a VR headset. All renderers support this output format, but the preview process is a bit of a bottleneck. You usually need to leave the DCC application, load the render in another app, e.g. Nuke and judge the visual quality there. This adds a bit of time to each iteration and makes the preview process cumbersome.

So I tried to simplify this process. Sending pictures to HMDs can get very technical and low-level but I rather took a high-level approach: Python + WebVR. Or more precisely Python on the Houdini side and WebVR on the side of a web browser. Using a web browser means that I have to leave Houdini for previewing VR render, but with Python I tried to make it as automatic as possible.

Check this video to see how my tool works:

Continue reading “Houdini 2 VR”

Houdini 2 VR

Setting up Houdini on a headless linux server

I will go briefly through the process of setting up Houdini on a headless linux server.

In our project we had access to Nvidia VCA hardware which was running CentOS 7.3 and did not have a X server.

This hardware has some decent computing power in it and we wanted to offload some of our rendering on this computer. We were rendering with Redshift renderer which scaled pretty well on multiple GPUs. We also just fitted into Redshift’s limit of max 8 GPUs.

To be able to do more general-purpose jobs (simulations, caching) on the VCA and to simplify submission process we decided to setup both Houdini and Redshift on it.

Continue reading “Setting up Houdini on a headless linux server”

Setting up Houdini on a headless linux server

Precision in Houdini

In my recent project in Houdini I was often hitting precision limits of 32-bit floating point numbers. This led me to figuring out what number precisions are used in Houdini and how can they be accessed.

In this post I will take a look at various contexts of Houdini and will mention floats, but the situation for integers should be the same.

Currently it looks that single precision (32-bit) floating point numbers are used in most operations and transferring data between nodes often happens in this format too. However this situation seems to be likely changed in the future releases of Houdini.

Continue reading “Precision in Houdini”

Precision in Houdini

Houdini tip | Houdini native SDF volume into VDB conversion

Recently I found an interesting problem while trying to convert Houdini dense (native) SDF volume into a VDB SDF volume. My primary motivation was to save space – to discard voxels, which were too far away from surface. This is one of the main reasons why VDBs are usually superior to dense volumes. Note that in this post I will not go too much into details about volumes, but will post some links at the end of the article which explain the basics.

Continue reading “Houdini tip | Houdini native SDF volume into VDB conversion”

Houdini tip | Houdini native SDF volume into VDB conversion