Game Development Toolset
UPDATED 6/4/2019
The Game Development Toolset is a collection of high level tools aimed to speed up games related workflows in Houdini. There are over 90 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 release to download from, recently we have started daily builds, so you can choose whether to download a daily build or a production build.
It is recommended to always grab the daily build for the very latest tools.
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. The Stable branch will be retired soon as releases have taken over for that gate keeping responsibility.
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.
DISCLAIMER 2: As of build 1.26 we have added analytics to the tools to report which nodes are being created. You can read more about the Anonymous User Statistics and how to disable them here: https://www.sidefx.com/legal/houdini-anonymous-usage-statistics/
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
Align and Distribute (NEW)
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
AliceVision Integration (NEW)
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.
Box Clip
Simple HDA to do 6 clip operations at one, allows you to control which of the 6 sides to clip. Useful for isolating a small piece of geometry
Building Generator (NEW)
A tool that when given a basic ‘block out’ shape, and a named set of building components, can generate detailed buildings.
Calculate Occlusion
Calculates vertex Ambient Occlusion at the SOP level. Lots of controls for intensity, falloffs and blur
Calculate Slope (NEW)
Calculates the slope of a point, used in the flowmap tools
Curve Branches (NEW)
Generates simple branching structures, like trees, cracks and lightning. It can also be chained together and works recursively
Curve Sweep (NEW)
A wrapper around the Sweep node, which allows you to sweep a number of predefined curves, add UVs to the results and give them with a third input as well as control it with ramps.
Color Adjustment (NEW)
Simple controls for manipulating Vertex Colors
Color Blend (NEW)
Gives a simple interface for blending vertex colors from 2 models using a third model as a possible mask. Has several options for different blend methods
Color Gradient (NEW)
Helper node for generating gradient ramps based on the object's position
Cylinder Generator
HDA part of the Mesh Generators, creates a cylinder with a curve as it's input
Decal Projector
Behaves like an in game decal system, but it utilizes boolean under the hood for more accurate decal geometry. Generates decals with proper 0-1 UVs
Delete Small Parts
Utility SOP to remove small disconnected parts based on a size threshold
Delight
Removes ambient directional light from Vertex Colors. Very useful for Photogrammetry Workflows
Destruction Cleanup
Optimizes RBD simulations based on whether the objects have moved or not. As seen on the Epic Twitch Stream.
Detail Mesh (NEW)
Allows for projecting a tileable mesh onto a projection surface. Example would be a tiling brick mesh used to add detail to a blockout of a building. (Comes with demoscene)
Dirt Skirt (NEW)
Creates a connectivity mesh between 2 objects. Helpful to hide seams between 2 objects interpenetrating.
Dissolve Flat Edges (NEW)
Removes edges that are within a specified tolerance of flatness. Helpful to get rid of boolean artifacts or obvious triangulation
Disc Generator
HDA part of the Mesh Generators, creates a disk
Edge Group to Curve
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
Edge Color (NEW)
Sets vertex colors based on Curvature parameters. Helpful to quickly add some interesting variation to meshes and simple texturing.
Extract Borders
Extract Border Edges to Curves. Optionally UV Borders instead of Geometry Borders
Extract Filename
Utility SOP to store a file information as a detail attribute to then be referenced in other SOPs.
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.
Flowmap Obstacle
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
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
Flowmap Visualize (NEW)
Realtime Visualization of the Flow in the viewport.
FBX ROP - Built Into 16.5 and removed from GameDev Toolset
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.
GameRes
Automatically Decimate, UV and Bake Maps for your high resolution Mesh. The culmination of the Mesh Pipeline effort
GoZ (NEW)
Link between Zbrush and Houdini. New in the GameDev tool, but has been around for a little while.
Group by Attribute
Similar to the partition node, but with slightly more forgiving interface. Generate groups by a single attribute
Group by Attribute Borders (NEW)
Allows you to generate a group based on UV borders or any other attribute borders.
Group UV Borders (NEW)
Allows you to easily group the UV borders
Group by Color (NEW)
Generates a point group based on a color and a fuzziness threshold.
Group Curve Corners (NEW)
Allows you to isolate inside and outside corners of a curve. Also generates an angle attribute.
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
Group Expand
Expands or contracts a group by a number of iterations. Positive iterations expand, negative iterations contract
Tutorial Link
Inside Face UVs (NEW)
Helper HDA to creates UVs on the inside of Voronoi Fractures
Instant Meshes Bridge
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
LOD Create (NEW)
Automatically Generates LODs from your mesh. Including Impostors as the lowest LOD level
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
Mapbox (NEW)
Creates a Heightfield or Polygon terrain based on real world Satellite imagery provided by MapBox. Requires Mapbox contract for commercial usage.
Maps Baker (NEW)
The Maps Baker HDA allows you to very quickly bake texture maps through either custom attributes, texture reprojection, or generation.
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
Merge Small Islands
Underlying node part of the AutoUV, also exposed as a standalone node. Combines smaller UV islands into neighboring larger islands
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
This nodes allows you to load multiple OBJ or FBX files in a single SOP
Niagara Impacts, Niagara Interpolate, Niagara RBD Split, Niagara ROP (NEW)
Several nodes that compose the Niagara Export Pipeline to Unreal 4
OSM Import
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 Filter (NEW)
Isolates predefined OSM data like Highways, Buildings and other common tags
OSM Buildings
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.
Path Deform (NEW)
Deforms a mesh along a curve, with several controls for twisting and modifying the mesh as it moves along the curve.
Physics Painter
Allows you to paint scatter objects and simulate them with RBD in order to cause them to settle
PolyDeform
Deforms the first input to match the shape of the second input. Incredibly useful for modifying scanned data.
Tutorial Link
Quick Material 2.0
QuickShade on steroids. Not only apply diffuse textures, but all of the different PBR material settings right at the SOP level. Now allows for multiple materials with custom names
Tutorial Link
RBD Director
Part of the new RBD Workflows. Allows you to control active chunks based on volumes
RBD Fracture
Part of the new RBD Workflows. Wrapper around Voronoi Fracture with several common tricks done by production artists
RBD Solver
Part of the new RBD Workflows. Allows you to simulate an RBD object in SOPs
Remove Inside Faces
Optimization Node to clean up geometry without relying on the boolean node
Retime
Simple interface to retime an animation sequence based on a curve parameter.
Simple Baker
A Wrapper for the Games Baker at the SOP level. Takes a low mesh and a high mesh as the 2 inputs
Tutorial Link
Sine Wave (NEW)
Modifies a mesh based on a sine wave, useful for generating oscillating objects. Similar to a wave deformer
Sketchfab Output
Upload your model to Sketchfab straight from Houdini
Skinning Converter
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
Snow Buildup (NEW)
Builds geometry on top of a mesh to recreate the look of snow accumulation.
Soften Normals
Utility script for softening the normals of an object and optionally hardening the UV seams.
Tutorial Link
Spiral (NEW)
A much requested node. Generates spirals and helices with intuitive controls
Sphere Generator
HDA part of the Mesh Generators, creates a sphere with UVs and Vertex Colors for Realtime VFX
Static Fracture Export
Exports pre-fractured pieces for realtime destruction setups. Useful in Unreal's destruction System and NVidia's PhysXLab
Straight Skeleton 2D (NEW)
Isolated the Straight Skeleton generated by a PolyExpand2D node with several options, including to reproject the ends to match the original shape.
Straighten (NEW)
Aligns the geometry based on group selections for Forward and Up faces. Useful for aligning photogrammetry meshes that might be awkwardly placed.
Sweep Geometry (NEW)
Sweeps a piece of geometry along a curve. Useful for generating roads and bridges based on modules
Terrain Layer Export/Import (NEW)
Properly reads/write data for Unreal landscape terrains with correct scale and rotation corrections
Terrain Mesh ROP
Export Heightfield Meshes in tiles with several options
Terrain Texture ROP
Export Heightfield textures with several options, including generating Normal Maps from Terrains
Thicken
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
Turntable
Simple HDA to rotate the model based on your timeline and a speed parameter
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. Now with less coming in sideways
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 Transfer (NEW)
Transfer UVs from one mesh to another of different topology while maintaining proper UV boundaries
UV Unitize
Simple Utility tool to make every face of a mesh to be UV'd from 0-1
UV Visualize
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
VoxelMesh
Workflow script to simplify the VDB roundtrip that is very common in geometry cleanup
MATs - Material Shaders
GameDev Shader (NEW)
PBR Shader for the viewport with industry standard controls. Also supports MikkT tangents that can be generated with the PolyFrame node in 17.5
MatCap Shader (NEW)
Viewport shader that can read the popular MatCap images in order to render very fast complex lighting effects.
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.
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
Impostor Texture
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.
Marmoset ROP
Export your assets to Marmoset from within Houdini and use Marmoset as a Renderer.
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
Pyro Preview
Preset for rendering Pyro, which creates a light rig and sets good initial settings for your Mantra ROP.
RBD to FBX
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 Fields are velocity grids used to control GPU particles in UE4. This tool exports them to the FGA file format that Unreal consumes.
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)
Volume Textures
Tutorial Link
Normal Color
Utility node to initialize the Color node with the proper normal map colors (128, 128, 255)
Tutorial Link
Combines 2 normal maps together while keeping them properly normalized
Tutorial Link
Inverts individual channels of the image, usually for flipping that pesky Y channel
Tutorial Link
Regular Levels operation but done in the proper -1 to 1 space
Tutorial Link
Generates a normal map from a grayscale image, with additional options to soften the normals and an intensity scale
Tutorial Link
Ensures the image is a valid normal map with all of the 3 channels properly balanced
Tutorial Link
Rotates a normal map while keeping the normal vectors correct
Tutorial Link
COMMENTS
kevinthebright 7 years, 2 months ago |
Looks like Edge Group to Curve didn't make it in the zip file?
lkruel 7 years, 2 months ago |
They Kevin, that one is on the Development Branch. It's fairly new so we're watching for feedback
xenakis82 6 years, 6 months 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?
wosborne 6 years, 3 months ago |
Hi, I just watched this video where it mentions a new mapbox sop.
I have downloaded GDTools v1.38 but I cant see this one.
where can I find it or will it be in the next point release?
thanks
wosborne 6 years, 3 months ago |
https://vimeo.com/286182503
wosborne 6 years, 3 months ago |
its at 37min 37 seconds.
lkruel 6 years, 3 months ago |
It's coming, it won't be in the next point release, but hopefully within the next 2 weeks
baida 6 years, 2 months ago |
Hi guys! Just noticed that in 'Unreal Material' node there is 'unreal_face_material' attribute created. While in the Houdini Engine plugin documentation it is stated that this attribute is depricated and it is recommended to use 'unreal_material' instead. The both options work fine though, but it would be more clear if the node would correspond to the documentation, So could you please fix that please? :)
limbicnation 6 years, 1 month ago |
For the VertexAnimationTexture Fluid , how can I change the translation and rotation of the static mesh in blueprint?
mangax 6 years, 1 month ago |
hello!
i was wondering if possible to add a feature, which is ability to bake multiple objects into a texture atlas, so it is possible to use exported fbx objects into any game engine then use the atlas generate in games.
this is very important feature as it saves alot of performance.
JulienH 6 years ago |
I got the latest version, and it looks like the 'Instant Meshes Bridge' has been removed ? Where can I find it ?
Also, it worked at the first install, but not running the 'Update Toolset' gives me that error:
Traceback (most recent call last):
File "update_toolset", line 374, in <module>
File "update_toolset", line 149, in __init__
File "update_toolset", line 184, in get_releases
TypeError: string indices must be integers
eyeclick 5 years, 11 months ago |
Is there only a limited number of Game Development tools available on the Apprentice version? I only see 17 out of 90 on the GD tool shelf.
lkruel 5 years, 11 months ago |
The shelf only shows a portion of them, if you hit Tab while inside a geometry node you'll see the GameDev category will all of the nodes.
eyeclick 5 years, 11 months ago |
Ikruel,
Thank you.
I'm still not seeing the one for Marmoset, to try.
lkruel 5 years, 11 months ago |
Marmoset I believe is a ROP. So it's under the /OUT network
vopaholic 5 years, 8 months ago |
Hi, thanks for the tools. Using a Mac and downloaded the development version on Houdini 17.5. Cant get Goz to work.
Installing Goz in Zbrush does not seem to find Houdini. Im updating paths in Zbrush preferences but only other apps are detected.
When trying to use Goz export node in Houdini I get this error:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "opdef:/gamedev::Sop/sop_goz_export?PythonModule", line 71, in export
File "opdef:/gamedev::Sop/sop_goz_export?PythonModule", line 44, in write_object_path
IOError: (2, 'No such file or directory', 'C:\\Users\\Public\\Pixologic\\GoZBrush/GoZ_ObjectList.txt')
Thanks
lkruel 5 years, 2 months ago |
GoZ isn't currently supported on Mac, sorry for the inconvenience
BlissettDMB 5 years, 8 months ago |
Checking back after waiting a year for things to mature. Really nice move with the Shelf Update Button. Nice :)
lkruel 5 years, 2 months ago |
Glad you liked it. Thanks for taking another look
Giaco80 5 years, 6 months ago |
HI, thanks very much for all this tools, I just started houdini and I already love it.
I have a problem tough when i try to use the simple baker, it gives me this
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "opdef:/gamedev::Sop/sop_simple_baker?PythonModule", line 4, in render
File "C:/PROGRA~1/SIDEEF~1/HOUDIN~1.229/houdini/python2.7libs\houpythonportion\ui.py", line 850, in decorator
return func(*args, **kwargs)
File "C:/PROGRA~1/SIDEEF~1/HOUDIN~1.229/houdini/python2.7libs\hou.py", line 51133, in render
return _hou.RopNode_render(*args, **kwargs)
OperationFailed: The attempted operation failed.
What do you suggest ?
Thanks!
lkruel 5 years, 2 months ago |
This isn't the best forum for debugging issues, can you send an email to support@sidefx.com?
Giaco80 5 years, 6 months ago |
(Sorry there's no edit) This error doesn't appear baking 512x512 maps, it happens on all other formats
Kwesikwaa 5 years, 3 months ago |
Hello Luiz, any reason the Cable Generator you demoed at Siggraph isn't part of the package?
lkruel 5 years, 3 months ago |
Hi! It actually is, it's just not represented on this page. We're looking at a better way of conveying the full list as we transition to Labs, this long list has become quite unruly
vinyvince 5 years, 3 months ago |
Thanks you so much for all these indeed really usefull tools, not only for realtime project but also for films work like in my case for now.
I'm surprised why there is no a Textures Bombing tool ? Any reason why there is not one up to date with 17.5 and pack with the features you would expect to?
Cheers,
Vincent*
---------
Vincent Thomas (VFX and Art since 1998)
Senior Env artist & Lighting & MattePainter & Creative Concepts
http://fr.linkedin.com/in/vincentthomas
(Available 15 August)
lkruel 5 years, 3 months ago |
Thanks for the feedback!
There are so many good texturing packages out there that we honestly haven't delved that deeply into texturing. Would you expect that to work with texture bombing vertex colors or would it be in COPs itself for seam removal and things of that nature?
danielschambach 5 years, 3 months ago |
Quick question re: the Mapbox SOP
Is it possible to change the zoom level? we'd like to get higher resolution heightmap/aerial imagery in our pipeline. At the moment, when zoom >14 the sop reverts back to 14. thanks
lkruel 5 years, 2 months ago |
Not currently, the problem is the that height information is capped at 14, so we cap both at 14 even though for the diffuse it technically does go higher.
EricSheng 5 years, 3 months ago |
Have tried the Maps Baker, the AO map's quality is poor and with a lot of artifacts no matter how I toggle the parameters.
lkruel 5 years, 2 months ago |
Can you try a higher resolution. We don't currently have Anti Aliasing and recommend rendering at a larger resolution and resizing the image down to effectively do the same.
Yury_Zen 5 years, 2 months ago |
Can't find Particles Baker. It would be nice to able to bake particles position, scale and rotatation.
With optionable lifetime to scale convesion. That way we will be able to export particles (verticies/sheres/triangle) to fbx and ues it for AR stuff.
lkruel 5 years, 2 months ago |
What would you like to Bake into? We have the Sprite Mode of VAT that will support that and the Niagara tools will export particle data to CSV files
Masoud 5 years, 2 months ago |
Hi;
It would be awesome if you add a Knit (Weaving) tool to Houdini GameDev. tools.
Thanks.
mdrxlr 5 years, 2 months ago |
Hey!
These tools are amazing, thanks so much for your effort. I'm especially excited about the Straight Skeleton tool and was wondering what would be the easiest way to generate bone chains from the resulting curves, as the Bones from Curves shelf tool seems to only pick up the first primitive in a geo node to build the chain from. I guess we could do a delete of all primitives that don't match $F and just go frame by frame and hit the shelf tool button again and again, but that doesn't seem like the most procedural way to do it..
Thanks!
davide445 5 years, 1 month ago |
Really good done, especially using the OSM related nodes.
What I'm missing in that context is a tool able to generate roads from OSM data.
I'm using the great Buildings tool, but so far generating roads appear to be (without reason in my opinion) complex and frustrating.
jermaineberkley 5 years, 1 month ago |
Is there a way I could generate an ocean form the masterclass, and export it to unity?
jermaineberkley 5 years, 1 month ago |
Is there a way to do water in general?
jhoral 4 years, 11 months ago |
Looks like sop_group_edge_loop is actually selecting edge *rings* and the group_edge_ring sop is just plain missing?
vanyfilatov 4 years, 10 months ago |
.dds support?
Olassi 1 month ago |
Hello everyone!
Please log in to leave a comment.