7 votes
Date Updated: 
Author Name: 
Shawn Olson

PropLine Plugin for 3ds Max PropLine is a scripted geometry plugin that distributes props along splines with various parameters to control how the props are distributed and transformed. This tool replaces the Spacing Tool in Max in a totally parametric/non-destructive fashion. The transformations of the props can be easily retrieved later to export into game engines or other formats.

Additional Info: 


Version 1.49

  • Added Scaling options to PropLine and PropLine Transformation Custom Attributes.

Version 1.48

  • Updated the orientation of the last prop spawned on a closed spline to point towards the first prop in the closed spline.
  • Added new transformation parameter called Point At First. When on, forces the last prop in a spline to point at the first prop whether the spline is closed or not.

Version 1.47

  • Added new setting Allow Repeat. When off, props will not repeat with Random or Probability distribution settings.

Version 1.46

  • Added new setting AutoUpdate. When off, the mesh is cached and not calculated when any setting is changed.
  • Added several new utilitiy functions to the PropLine Manager Floater.
  • Fixed bug with some combinations of Distribution type and shape objects other than Editable Spline Shapes.

Version 1.45

  • Updated they way the material is generated to fix problems with Grouped geometry and XRef geometry nodes.

Version 1.44

  • Minor performance optimization.
  • Updated the Enforce XRef Proxy setting to only turn on all proxies when enabled. When disabled, the user must manually change the proxy status of objects or to press the Disable XRef Proxy button in the performance rollout. This is to help reduce sever performance problems if some or all of the XRef objects are very high poly.

Version 1.43

  • Fixed viewport performance bug that caused Max to lag during the creation of objects after the PropLine was created.
  • Fixed a bug with materials when using XRef Objects.

Version 1.42

  • Fixed a bug that could crash PropLine and freeze the Max UI due to a dependency loop with some materials.
  • Fixed Instantiate function not properly skipping props that were skipped in the PropLine mesh.

Version 1.41

  • Fixed a bug in calculating the distribution distances.

Version 1.4

  • Added new Prop Distribution Method "divide". When on, places props at equal intervals along the path. Number of props is determined by the Spacing value (which is converted to an integer value when using divide distribution).
  • Updated PropLine Custom Attributes to display changes in the viewport immediately. Removed button to force display of prop CA changes. (Props with pre-existing CA need the CA updated by re-assigning a CA to the prop.)
  • Added support for Group props.
  • Added new parameter Skip Probability to PropLine and PropLine Custom Attributes. Defaults to 0. When above 0, there is a chance that a prop will be skipped at a location.
  • Added new transform setting Average Vector. When on, each prop will orient to a vector defined by the last and next prop locations. When off (default) the vector is between the current location and the next prop.
  • Added new transform setting for Snap to Grid. When on, each prop pivot is moved to the nearest grid intersection based on the grid spacing value.
  • Added Custom Attribute override for Average Vector.
  • Added Custom Attribute override for Upright.
  • Added Prop Manager floater.
  • Added button to generate new random seed value.
  • Fixed per-prop transform overrides losing randomness after a few props when transformation randomness is on.
  • Updated Spacing & Padding minimum to be set in a global config file. The default minimum is still 1.0 but you can now change this default.
  • Added new Performance Rollout.
  • Moved Display as Boxes from the main parameters rollout to the the Performance rollout.
  • Added new performance setting Limit Props. When on, the props generated in the PropLine mesh is limited to this value.
  • Added Min Prop Size parameter. When on, limits the minimum spacing between props when using the Size distribution method.
  • Added performance setting XRef Object Proxies. When on, forces all XRef Object nodes that have proxies to display the proxy object in the viewport.
  • Added Global Settings button in Utilities Rollout which launches a controller for setting some global settings that get stored in an INI file.
  • Fixed the placement of props when using the Interpolation spacing setting to match interpolation correctly.
  • Updated calculation of the probability of props along splines based on Material ID.
  • Fixed Prop Orientation to still point to the next prop location even if the next prop is skipped based on Material ID.
  • Fixed problem with erratic distribution when the distribution method was set to Size and padding randomization was on.

Version 1.3

  • Added new setting "Use Mat ID Distribution". When on, each prop can be set to obey distribution based on the rules of the spline's material IDs.
  • Added Rules to Custom Attribute of PropLine Props to limit object to specific material IDs. Default to use All material IDs, but if set to include/exclude material IDs, allows you to enter a comma-separated list of the IDs to use.
  • Added Randomize Spacing option when in Spacing distribution method.
  • Added support for spline bases that have been extruded or had geometry added to them.
  • Added several buttons to get parameters and settings from other PropLine objects in the scene.
  • Fixed the placement of props when using the Interpolation spacing setting to match interpolation correctly.
  • Added two macroscript functions: Activate All PropLine and Deactivate All PropLine. These commands must be assigned via Max's Customize User Interface.

Version 1.21

  • Fixed bug if any of the source geometry nodes do not have any mesh data.

Version 1.2

  • Added new Prop Distribution method: Probability. This mode will distribute each prop based on its relative probability attribute (added to the custom attribute definition for source nodes).
  • Added new parameters Padding and Padding Randomization that adds extra space between each prop when the Prop Distribution Method is set to spacing.
  • Added new transformation parameter Upright. When on, all props will use an initial X-axis vector from the spline that is transformed to be parallel with the World's XY plane. This is helpful when you need props to stand upright in the world Z axis regardless of the spline vector.
  • Added Probability property to the PropLine Transforms custom attribute.
  • Added sub-rollout to Propline Source Nodes section. When a node is selected in the list that has a PropLineTransform custom attribute, that node's transform rollout will populate the subrollout.
  • Added button Show Override Changes. Used to update the PropLine if any changes are made to the source node custom attributes in the source node attribute sub-rollout.
  • Updated the function for adding custom attributes to source nodes. Now the command panel returns to the modify tab and the current selection is remembered.
  • Moved the Allow Overrides setting to the Transformations rollout.
  • Swapped order of the Spline Base UI group and the Source Nodes UI Group because of the added custom attribute sub-rollout.
Version Requirement: 
3ds Max 2008+
Video URL: 


Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
lightcube's picture

Thanks for the comments guys.

Thanks for the comments guys. I really appreciate the love!

I guess I should update the license info. Use on a render node is not restricted. No extra licenses needed unless installed on machines for more than one user.


Shawn Olson

Developer of Wall Worm

michaelwbell's picture

Very useful, very versatile.


I grabbed a copy of Propline after seeing the first Youtube video and have been using it on a number of productions for the past month or so. I've not seen any of the other WallWorm tools until now. My focus at this time is on standard 'offline' rendering - not realtime but found Propline to be extremely useful no matter what the task. It beats Spacing Tool, Railclone and other arrays in many situations mainly because of the ease of use, speed to setup...and the low price.

Highly recommended.

This review is based on the initial release. I've not yet had a chance to check out the features added since then.

One question: What is the policy on network rendering? If I have one Propline license but require propline to network render on a collection of render nodes, can I use the Propline licence on those machines, or do I need to purchase a separate render license?

guarabana's picture


This script has been a real find for me. Recommendable.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.