Houdini 13.0 Nodes

interface version 1

Builds a maze from polylines on the horizontal plane.

This “primitive” builds a maze with the algorithm called the recursive division method.

There are no closed sections within this type of maze (a path can always be found between any two locations).

  • Construction of a simple procedural office floor, with Maze qL SOP providing the floor plan and other details (e.g. inside wall heights are based on wall recursion levels).

Note

The node doesn’t provide entry/exit openings (on the outer walls), cutting them is left for the user to do. (As of the property mentioned above, the entry/exit can be placed anywhere on the outer walls, with no restrictions.)

Parameters

Lower Left, Upper Right Corner

Opposite corners of the maze.

Seed

Seed of the random function that divides the space.

Limit Divisions

Limit the number of the division steps.

Limit

Number of divisions when Limit Divisions toggled.

Geometry
Build Inside

Build the inside of the maze.

Inside Walls

Build inside walls.

Doors

Build additional lines to represent doors on walls.

Maze Borders

Draw outer walls.

Attributes
Current Depth Attrib

A primitive attribute, storing the recursion depth of each primitive.

Max Depth Attrib

A detail attribute, storing the maximum recursion (subdivision) depth reached.

Prim Type Attrib

A string attribute that stores the type (border, wall, door) and the orientation (horiz, vert) of each primitive.

To Do

  • Randomness should always be consistent when adjusting Limit Divisions

  • Should create per-point normals (direction vectors)

  • Flag to generate “door” geometry

  • Support for primitive groups? (borders, walls, doors)

Release Notes

interface version 1

2014-04-26
  • Added support for per-primitive string attribute primtype

  • Added option for generating “door” geometry

  • Inner wall linear curves are now always “oriented towards” the door opening

2014-02-18
  • Added toggles for building each wall and the inside (the maze itself)

2013-10-13
  • Basic support for storing geometry attributes (e.g. recursion depth)

  • Division value 0 now works (no inside walls)

  • Help card update

2012-01-01

First version.