Game Development Toolset

The Game Development Toolset is a collection of high level tools aimed to speed up games related workflows in Houdini. There are over 30 tools that range from UVing to generating Motion Vectors from simulations. 

These tools are not tied to the regular Houdini development cycle and become available the moment they are ready for testing. They are currently deployed through our github page, and will soon be updatable from within Houdini. 

Downloading the Tools

As of 16.5 you can download the tools straight from Houdini.
Under the Games Development Shelf (you might need to add this to your shelf sets) click on the Update Toolset button.
This will pop up a dialog prompting you with which branch to download and which release.
Always grab the latest release, and if possible the Development branch for the very latest.
You can also clone the tools directly from our Github repository, more details below

Github Details

You can download the tools from our Github Repository.
There are 2 main branches Stable and Development. We are actively developing tools and checking them into the Development branch, so if you want the very latest, that's the place to go. Every so often we push the tools to Stable when we feel they are stable. 

DISCLAIMER: These tools are provided as is. We provide as much of the source as we can in order for you to troubleshoot any issues that may arise. We have developers working on these tools full time, but these tools do not fall under the regular SideFX support team.

Tutorial Collections

SideFX has compiled tutorials for a number of the gamedev tools on the Game Tools Learning Path page. This page links you to a number of tutorial collection pages which you can access using the following links.

Tools Details 

SOPs - Surface Operators 

Auto UV  - UPDATED in 16.5 

Automatically generates the seams for an object and immediately runs a UV Flatten after the fact. There are 2 main techniques: 
- Shortest Path : Uses the shortest path algorithm to define seams based on the surface's curvature
- Cluster: Subdivides the meshes into quadrants which turn into uv islands.
- Axis Aligned: Similar to the UV Unwrap, but does a better job as clustering smaller islands
- Unwrap: The traditional UV Unwrap

Tutorial Link

Axis Align - NEW in 16.5 
Easy way to align your models' XYZ Axis based on its bounding boxes

Tutorial Link

Measure Curvature - renamed from Calculate Curvature
Provides 7 different ways of calculating an model's curvature. 2 built in methods and 5 other contributed by Houdini user Petz
Useful for doing procedural edge damaging and several other effects. 

Calculate Occlusion - NEW in 16.5
Calculates vertex Ambient Occlusion at the SOP level. Lots of controls for intensity, falloffs and blur

Tutorial Link

Delete Small Parts - NEW in 16.5 
Utility SOP to remove small disconnected parts based on a size threshold

Tutorial Link

Destruction Cleanup - NEW in 16.5

Optimizes RBD simulations based on whether the objects have moved or not. As seen on the Epic Twitch Stream. 

Edge Group to Curve - UPDATED in 16.5
Convert an edge selection (group) to a polygon curve. Useful if you want to sweep something along your model or many other applications.
Tutorial Link - Shown at the 5:07 minute mark  in the Auto UVs SOP tutorial

Extract Filename - NEW in 16.5
Utility SOP to store a file information as a detail attribute to then be referenced in other SOPs.

Tutorial Link 

FlowMap - renamed from Create Flowmap
Initializes the correct attributes on a mesh in order to export a flowmap. 
Tutorial Link - All flowmap nodes

Flowmap Guide 
Uses a curve as an additional input and bends the velocity field of the flow map based on said curve. Very useful for non destructively combing the flow field.  

Tutorial Link - All flowmap nodes

Flowmap Obstacle - UPDATED in 16.5 
Uses an object as an additional input and warms the velocity field around said object. Useful for very quickly bending the flow around objects. 
Tutorial Link - All flowmap nodes

Flowmap To Color - UPDATED in 16.5

Converts the worldspace velocity vectors into Tangent (uv) space colors. This allows the user to then bake the velocities out as vertex colors to be used in a game engine.
Tutorial Link - All flowmap nodes

FBX ROP - Built Into 16.5 
Utility node to bring the FBX export capabilities into the SOP context. We can currently export geometry and alembic from the SOPs but we didn't have an equivalent version for FBX.  

Group Edge Loop
Procedurally generate Point, Prim and Edge Loops.  There is also an option to skip every N units, which allows for interesting results. 
Tutorial Link - Update Imminent 

Group Expand
Expands or contracts a group by a number of iterations. Positive iterations expand, negative iterations contract
Tutorial Link

Instant Meshes Bridge - UPDATED in 16.5
Instant Meshes is a great open source Quad Remesher. This sops simply wraps around its command line interface for a more native Houdini experience.
Tutorial Link

Make Loop
Makes a Volume or a mesh with constant topology automatically loop. It does so by offsetting the animation by half and cross dissolving the animation onto itself. 
Tutorial Link

Mark Seams 
This nodes allows for a more intuitive way of managing edge groups for common workflows like UVing.
It is essentially an uber group node which lets you store selections as well as convert primitive selections into edge selections of said primitive borders
Tutorial Link

Mesh Tiler
Take a collection of meshes distributed on a planar surface, and make sure the meshes are configured in a tileable layout. This is especially useful for generating tiling textures from 3D meshes.
Tutorial Link

Multi File - NEW in 16.5 
This nodes allows you to load multiple OBJ or FBX files in a single SOP

Tutorial Link

OSM Import - UPDATED in 16.5
Open Street Map is a great database for city street data. This node efficiently loads the OSM files into Houdini as well as all of the different tagged attributes on the buildings and streets.
Tutorial Link

OSM Buildings - NEW in 16.5
Open Street Map is a great database for city street data. This node parses the data brought in from the OSM Import node and generate building geometry from the profile curves. 

PolyDeform - NEW in 16.5 
Deforms the first input to match the shape of the second input. Incredibly useful for modifying scanned data.
Tutorial Link

Quick Material - NEW in 16.5 
QuickShade on steroids. Not only apply diffuse textures, but all of the different PBR material settings right at the SOP level
Tutorial Link

Simple Baker - NEW in 16.5 
A Wrapper for the Games Baker at the SOP level. Takes a low mesh and a high mesh as the 2 inputs
Tutorial Link

Skinning Converter - NEW in 16.5 
Skinning Converter is a Houdini Digital Asset (HDA) that can convert any non-changing topology deforming mesh sequence into a bone based animation. The user gets control over a couple of parameters, which allows the user to get their desired result.
Tutorial Link

Soften Normals - NEW in 16.5 
Utility script for softening the normals of an object and optionally hardening the UV seams.
Tutorial Link 

Static Fracture Export 
Exports pre-fractured pieces for realtime destruction setups. Useful in Unreal's destruction System and NVidia's PhysXLab 

Thicken - NEW in 16.5 
Give planar surfaces thickness with this node. It also has a slightly smarter logic on how to thicken an object in order to avoid geometry errors. Great for making things water tight! 

Tutorial Link

Unreal Pivot Painter
Tool to generate the appropriate data necessary for Unreal 4's pivot based animation nodes. Which allows you to do complex shader animations with a very slight overhead compared to a traditional joint setup. 
Tutorial Link

UV Stack 
Stacks similar UV shells together. Great for hair workflows and general UV management. 
Also contains some extra controls for splitting stacks randomly for variation. 
Tutorial Link

UV Unitize
Simple Utility tool to make every face of a mesh to be UV'd from 0-1

Tutorial Link

UV Visualize - NEW in 16.5
Helper script to visualize UVs. Including features such as: 
Visualize Seams
Warp between UV space and Model Space 
Modify the tiling of the grid texture
Visualize Islands

Tutorial Link

VoxelMesh - NEW in 16.5
Workflow script to simplify the VDB roundtrip that is very common in geometry cleanup

Tutorial Link

ROPs - Render Operators 

CSV Exporter
A simple example ROP to demonstrate how you can extract data from geometry and write it out with Python. The bulk of the code is in the Scripts Tab in the Type Properties Dialog. 

Impostor Texture - NEW
The impostor tool creates texture sheets to fake 3D objects in your game engine.  The tool will create full 3D, fixed axis and animated impostors.

Pyro Preview - NEW
Preset for rendering Pyro, which creates a light rig and sets good initial settings for your Mantra ROP.

Games Baker
A wrapper around Mantra's baking capabilities. This node simplified the baking process by allowing you to bake the common maps easily, as well as any point attribute without additional setup. A recent upgrade allows for the baking of multiple high>low pairs at the same time, and proper compositing of the resulting textures.
Tutorial Link 

Motion Vectors

Renders out the velocity vectors to camera space, which allows them to be used as frame blending flow maps. The tutorial goes in depth on how to render them and hook them up in Unreal. 
Tutorial Link


Export a destruction sequence to FBX. It takes a packed primitive destruction setup and moves all of the point data up to object level, which allows FBX to interpret that as top level motion. Most game engines will interpret this data as a skeletal mesh animation that can be played back natively.
Tutorial Link 

Texture Sheets

This node helps with the generation of Flipbooks/Texture Sheets. Including the generation of normals (both based on the volume data as well as a traditional 6 light rig)  and the ability to channel pack your texture. 
Tutorial Link

Vector Field 
Vector Fields are velocity grids used to control GPU particles in UE4. This tool exports them to the FGA file format that Unreal consumes.
Tutorial Link 

Vertex Animation Textures
Export simulation data to texture files. This allows for very effective vertex shader playback of your high resolution simulation. There are 4 types of simulation supported

  • Consistant Topology throughout the Simulation (Soft) 
  • Packed Primitive style Rigid Body Simulation (Rigid) 
  • Changing Topology throughout the Simulation (Fluid) 
  • Camera facing cards, points moving through space (Sprite)

Tutorial Link 
Webinar Link 

Volume Textures

Converts a volume into a flipbook representation of a 3D texture. The resulting texture is usable in Ray Marching shaders which render your Houdini in Realtime! 
Tutorial Link

COPs - Compositor Operators 

Normal Color
Utility node to initialize the Color node with the proper normal map colors (128, 128, 255) 
Tutorial Link

Normal Combine  

Combines 2 normal maps together while keeping them properly normalized
Tutorial Link

Normal Invert

Inverts individual channels of the image, usually for flipping that pesky Y channel
Tutorial Link

Normal Levels  

Regular Levels operation but done in the proper -1 to 1 space 
Tutorial Link

Normal Map 

Generates a normal map from a grayscale image, with additional options to soften the normals and an intensity scale
Tutorial Link

Normal Normalize 

Ensures the image is a valid normal map with all of the 3 channels properly balanced
Tutorial Link

Normal Rotate 

Rotates a normal map while keeping the normal vectors correct
Tutorial Link


  • kevinthebright 10 months, 1 week ago  | 

    Looks like Edge Group to Curve didn't make it in the zip file?

    • lkruel 10 months, 1 week ago  | 

      They Kevin, that one is on the Development Branch. It's fairly new so we're watching for feedback

  • xenakis82 1 month, 3 weeks ago  | 

    I am currently only able to save one frame of data to a CSV file even after setting the export frame range. I would like to export point data from an animation including frame numbers. Is this possible using the CSV exporter?

  • joemaker 3 days, 11 hours ago  | 

    Great post

Please log in to leave a comment.