Search code examples
maxscript

Create own (custom) modifier in MaxScript


I want to create my own modifier for the object. So when I select the object, go to Modify Panel and expand the list of modifiers, myModifier will shows up.

What would be the simples way?


Solution

  • You want to derive a new maxscript class from either Modifier, SimpleMod, or one of the existing modifiers (depending on your needs).

    A simple modifier that just moves vertices around is best done from SimpleMod. Here is the sample from the docs. There are more examples in the documentation http://docs.autodesk.com/3DSMAX/14/ENU/MAXScript%20Help%202012/files/GUID-E91909AD-28D5-4AEF-8C6C-2EF2AC0C78A-1841.htm

    plugin simpleMod saddle
    name:"SaddleDeform"
    classID:#(685325,452281)
    version:1
    (
      parameters main rollout:params
      (
        amount type:#integer ui:amtSpin default:20
      )
      rollout params "Saddle Parameters"
      (
        spinner amtSpin "Amount: " type:#integer range:[0,1000,20]
      )
      on map i p do
      (
        p.z += amount * sin((p.x * 22.5/extent.x) * (p.y * 22.5/extent.y))
        p
      )
    )