Primitive Maker

75 votes
Date Updated: 
Author Name: 

Creates a new Primitive from a template object.

Additional Info: 

This script creates a simpleObject plugin and registers the new primitive. Works with both geometry and shape objects. In the case of shapes, the primitive is of geometry type, based on the renderable version of the template shape as defined by the settings in the Rendering rollout, even if the Enable options are off.

The script supports smoothing groups, material IDs and mapping coordinates for all map channels (except -1 and -2, respectively alpha and illum).

The only parameter for the new primitive is Size. Its value corresponds to whichever dimension of the object's bounding box is the largest.

The Original Size button resets the size to that of the original object.

The Show Location button displays the path and name of the plugin's file.

The Sub-Folder from Category option creates a new folder in the current location - if it doesn't already exist - based on the primitive's category.

The Discard Mapping Coords option ensures that no mapping coordinates are passed from the template.

The name of the plugin file is of the form as entered in the dialog. Edit it at your own risks!

To make the primitive permanent, choose as location one of max's startup folders, like \$max\plugins (the default).

You can easily edit the various default values (default folder, legal characters for Name and Category  and option states) in the script's file. These are set at the top of the code for easy access.

Each new primitive class is scriptable. Just replace any eventual space in its name by an underscore. If the size property is not specified, the size of the original template object is used.

In the same fashion, there is also a Helper Maker.


v. 1.1: fixed a few loose ends.

v. 1.2: fixed a major bug that prevented cloning correctly (thanks to gramx for finding it).

Version Requirement: 
max 9 and above
PrimitiveMaker.ms14.43 KB


Comment viewing options

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

Question about your amazing script! Im 2011 user 64 bits version

I love your MaxScript!
Thanks for sharing something so useful like this!
I have a question, i created one object, and now when i open my max, it takes more time that common (long time).
Its that right?

S-ed's picture

3dsMax 2012 x64 - Works Fine!

Actually, i've been frustrated when have read about problems in 2012. But it works! =)

fajar's picture

There will be good idea if

There will be good idea if someone can make website that contain geometry script that maded by this script

NikkoN's picture


Thanks for the script! A very good thing

lantlant's picture


Perfect script! :)

kyle108's picture

i am curious to know if

i am curious to know if there's a way to modify this script so it allows you to place custom primitive buttons in a custom toolbar as opposed to the create geometry tab. unfortunately i dont know enough about maxscript to do it myself. any help would be greatly appreciated! :)

jpscouting's picture

Oh man this was so useful.

Oh man this was so useful. But it doesn't work in 2012, I'm so bummed. um...pls fix, pretty please.

Garp's picture

Great :(

Looks like they're breaking the backward compatibility.
There's nothing I can do about it.

Marius Silaghi's picture

in 3ds max 2012 the

in 3ds max 2012 the script/plugin has been created the filein function gives me an error saying that it cannot open the file

Comment viewing options

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