Using VEX Shaders in Houdini - Creating an Underwater Scene

by Richard Purcell

 

 

 

 

VEX (Vector Expression) is a relatively simple programming language that enables Houdini users to create their own shaders. In addition to the default VEX shaders that come with Houdini, users can create their own or install complied shaders found on websites such as http://www.nk-exa.co.jp/houdini/vex and http://www.odforce.net.

This intermediate tutorial introduces you to the directory structure and installation of VEX shaders and illustrates how they are used to create amazing images. VEX operators will be used to recreate these aspects of Side Effects' Un Real ad:

1. a ground plane with a coral shader
2. a dapple light that reproduces caustic light effects on the ground plane
3. a water plane with a water shader
4. fog

Getting Started

The first thing you will need to do is download this zipped file. This file contains all the VEX operators you will need for this tutorial.

Next unzip the file into a temp directory and check to see that the following files are there:

jwgloopcolor.ds
jwgloopcolor.vex
jwgloopcolor.vfl
jwgloop.ds
jwgloop.vex
jwgloop.vfl
jw_causticlight.ds
jw_causticlight.vex
jw_causticlight.vfl

*Anything with the .vex extension is the compiled VEX operator. Anything with the .ds extension contains the code used to create the operator's interface items such as labels, default values, and help. Anything with the.vfl extension is the source code from which the VEX operator is compiled using a program called vcc. The .vfl file is not necessary for this tutorial. It is included so that you may see the code used to write the VEX shaders and modify them if you like.


Coral Shader

Now that you have all the files you will need, you are ready to create a ground plane covered in knobby coral. This section describes setting up the interface, creating the groundplane, adding lights, installing and applying the gloop shaders, and rendering a test image.

PAGE 1

Continued on Page 2 3 4 5 6 7 8 9


Post a message in the Digital Post Production World Wide User Group!