Overview
This tool creates a path-finding array for an AI to traverse. Connections are generated in Houdini Engine and processed in Unity for use by the AI. Multiple different weight types can be chosen, including the presence of: water, debris, or sediment, to height and arbitrary noise.
Why
Improvement on an Artificial Intelligence course assignment to practice working with Houdini Digital Assets and utilizing them in a project.
General Walkthrough
The terrain is generated as a heightfield in Houdini and the points for the pathfinding array are projected onto it. Attributes from the heightfield (water, height, etc) are transferred onto the points. Neighbours are located for each of the points and saved. Some setup to have scripts attached and instance a ‘node’ prefab is done, and then it’s handed off to Unity.
Once loaded in Unity, the script finds and makes the connections between the nodes, and applies the selected weight option the designer chooses. The option to invert the weights is also made available.
Looking Back
This definitely served it’s purpose at the time, generating a node field more interesting than a handful scattered about the level.
As this was a quick add-on to a project documentation is, to say the least, limited. Controls in Unity are restricted to changing the weight type, the random noise, and the amount of nodes for the field. Changing the heightfield is only done in Houdini, which isn’t acceptable for a public tool in my opinion.