Home Technical Talk

Max Features I Want in Maya

purehilarity
polycounter lvl 6
Offline / Send Message
purehilarity polycounter lvl 6
There's a couple things that Max have that seem essential to modelling that I can't seem to emulate in Maya. Does anybody know of plugins or work-arounds for this to work? I'm sorry if this is already up, I couldn't find it.

Cut Tool - Yes we have the split polygon and interactive split tool, but I can't get either to work the way they do in Max. I want to be able to cut in the middle of faces and snap to verts of other shapes. Basically want to do what I always see people do, cut out cylinders from flat or curved surfaces to get nice round holes. I've tried setting the interactive split tool to not be on edges only but it just doesn't work right.

Make Circle - take a group of verts and make them into a perfect circle. Anyone know of this is possible in Maya?

Make Planar - This one least of all. I know you can just scale them down yourself, but it would be pretty cool if I had a script for it. Any thoughts?

Thanks!

Replies

  • onionhead_o
    Options
    Offline / Send Message
    onionhead_o polycounter lvl 16
    @purehilarity

    Cut Tool -- use split polygon tool and check off split from edge only. to snap just press v.

    Make Circle -- select the verts and then choose sculpt deformer. Works kinda like spherify in max. sometimes you might need to run a average vertices before you do this.

    Make Planar -- theres a tool from Maya bonus tools that does this.
  • passerby
    Options
    Offline / Send Message
    passerby polycounter lvl 12
    for the make circle on a vertex selection I got some code that does this in one click for me, that I can post when I get home tonight.
  • Bartalon
    Options
    Offline / Send Message
    Bartalon polycounter lvl 12

    Cut Tool - Yes we have the split polygon and interactive split tool, but I can't get either to work the way they do in Max. I want to be able to cut in the middle of faces and snap to verts of other shapes. Basically want to do what I always see people do, cut out cylinders from flat or curved surfaces to get nice round holes. I've tried setting the interactive split tool to not be on edges only but it just doesn't work right.

    Make Planar - This one least of all. I know you can just scale them down yourself, but it would be pretty cool if I had a script for it. Any thoughts?

    Thanks!

    For more complex polygonal cuts, I use a succession of these tools:

    1 Select an existing collection of edges
    2 Modify > Convert > Polygon Edges to Curve
    3 Edit Mesh > Project Curve on Mesh
    4 Edit Mesh > Split mesh with projected curve

    split.PNG

    This tool has construction history as well, meaning you can move the curves around in real time to adjust your end result just like any other curve-based operation.

    As for making planar, I usually just select the faces I want and with Discrete Scale active (hotkey J), scale them in. If a group of faces is off-axis, I use the Normals Average scale setting or the Set to Face setting, then discrete scale.
  • passerby
    Options
    Offline / Send Message
    passerby polycounter lvl 12
    here is what i use make a circle from the selected verts.
    import maya.cmds as cmds
    
    def spherify():
        '''spherize from 3ds max'''
        sel = cmds.ls(sl=True, fl=True)
        value = cmds.polyEvaluate(bc=True)
        value = [abs(v[0] - v[1]) for v in value]
        value = max(value) / 2
    
        deform = cmds.sculpt(sel, mxd=0, oc=True)
        cmds.setAttr(deform[1] + '.scale', value, value, value)
    
        shape = cmds.listRelatives(sel, p=True, s=True)
        cmds.delete(shape, ch=True)
        cmds.select(sel)
    
  • BARDLER
    Options
    Offline / Send Message
    BARDLER polycounter lvl 12
    passerby wrote: »
    here is what i use make a circle from the selected verts.
    import maya.cmds as cmds
    
    def spherify():
        '''spherize from 3ds max'''
        sel = cmds.ls(sl=True, fl=True)
        value = cmds.polyEvaluate(bc=True)
        value = [abs(v[0] - v[1]) for v in value]
        value = max(value) / 2
    
        deform = cmds.sculpt(sel, mxd=0, oc=True)
        cmds.setAttr(deform[1] + '.scale', value, value, value)
    
        shape = cmds.listRelatives(sel, p=True, s=True)
        cmds.delete(shape, ch=True)
        cmds.select(sel)
    

    How do you get that to work. I selected 8 verts that are on the face of a plane, and ran the script. The script ran, but nothing happened in my viewport. I would love to have a tool that does that.
  • passerby
    Options
    Offline / Send Message
    passerby polycounter lvl 12
    sorry, didn't explain usage.

    if your just running the whole script as is

    run this
    import maya.cmds as cmds
    
    
    def spherify():
        '''spherize from 3ds max'''
        sel = cmds.ls(sl=True, fl=True)
        value = cmds.polyEvaluate(bc=True)
        value = [abs(v[0] - v[1]) for v in value]
        value = max(value) / 2
    
        deform = cmds.sculpt(sel, mxd=0, oc=True)
        cmds.setAttr(deform[1] + '.scale', value, value, value)
    
        shape = cmds.listRelatives(sel, p=True, s=True)
        cmds.delete(shape, ch=True)
        cmds.select(sel)
    
    spherify()
    

    that originally snippet only defines the function, but doesn't run it.
    Also be sure your are running it as python code not mel.
  • CheeseOnToast
    Options
    Offline / Send Message
    CheeseOnToast greentooth
    I just tried this out and nothing happened. I copy/pasted the latest script to the script editor, dragged it to my custom shelf and created a new python button. I made a selection of verts to spherify, then hit the button. Nada. Any ideas?
  • Toast
    Options
    Offline / Send Message
    Toast polycounter lvl 11
  • passerby
    Options
    Offline / Send Message
    passerby polycounter lvl 12
    @ CheeseOnToast any error in the script editor.

    should work just like that, but i only tested on 2012, but it is pretty basic both on the maya commands it uses and what features of pyhton used so should run any maya version
  • CheeseOnToast
    Options
    Offline / Send Message
    CheeseOnToast greentooth
    Didn't get any errors, and I'm on 2012 here as well. Got other python scripts working fine. Thanks anyway, I'll give it a go at home and see if it works there.
  • Money
    Options
    Offline / Send Message
    Money polycounter lvl 8
    On what mesh did you try it? First I tried 2x2x2 cube, deleted top faces on tried on top verts to form a circle but failed. Then I took a cylinder, deleted top, moved verts a bit and ran it again; then it worked. I think it needs to be one continuous edge loop for it to run since on a cube those top were actually 4 loops.
  • oglu
    Options
    Offline / Send Message
    oglu polycount lvl 666
    hmm... its doing nothing...
  • passerby
    Options
    Offline / Send Message
    passerby polycounter lvl 12
    try this.
    import maya.cmds as cmds
    
    
    def getComponetsCenter(sel):
        xTotal = 0
        yTotal = 0
        zTotal = 0
        for i in xrange(len(sel)):
            xTotal = xTotal + cmds.pointPosition(sel[i])[0]
            yTotal = yTotal + cmds.pointPosition(sel[i])[1]
            zTotal = zTotal + cmds.pointPosition(sel[i])[2]
        xNew = xTotal / len(sel)
        yNew = yTotal / len(sel)
        zNew = zTotal / len(sel)
        return (xNew, yNew, zNew)
    
    
    def spherify():
        '''spherize from 3ds max'''
        sel = cmds.ls(sl=True, fl=True)
        if cmds.filterExpand(sel, sm=31):
            value = cmds.polyEvaluate(bc=True)
            value = [abs(v[0] - v[1]) for v in value]
            value = max(value) / 2
    
            cmds.scale(0.1, 0.1, 0.1, sel, ws=True, r=True, p=getComponetsCenter(sel))
    
            deform = cmds.sculpt(sel, mxd=0, oc=True)
            cmds.setAttr(deform[1] + '.scale', value, value, value)
    
            shape = cmds.listRelatives(sel, p=True, s=True)
            cmds.delete(shape, ch=True)
            cmds.select(sel)
        else:
            raise Exception('Spherify: Operaton requires a vertex selection')
    
    spherify()
    
  • Joopson
    Options
    Offline / Send Message
    Joopson quad damage
    Hey @passerby, any reason this would work on my home machine (Maya 2016) but not my work machine (also Maya 2016)?

    It makes things round at home, but at work it just scales down the selected vertices, without rounding them.
  • CreativeSheep
    Options
    Offline / Send Message
    CreativeSheep polycounter lvl 8
    Maya 2017 will be released soon, the only thing I'm hoping for is BiFrost to be opened; otherwise I will have to deep dive into Houdini.
  • Ingsoc75
    Options
    Offline / Send Message
    Ingsoc75 polycounter lvl 5
    Make Planar -- theres a tool from Maya bonus tools that does this.

    Can anyone please tell me what tool in the Bonus Tools this is? Is it even in the 2014 Bonus Tools?
  • Joopson
    Options
    Offline / Send Message
    Joopson quad damage
    @Ingsoc75 You can try out FunkyBunnies's "FB Poly Planarize" script. Works fantastic. Not sure about bonus tools.

    http://www.funkybunnies3d.com/tools.php
  • Ingsoc75
    Options
    Offline / Send Message
    Ingsoc75 polycounter lvl 5
    Joopson said:
    @Ingsoc75 You can try out FunkyBunnies's "FB Poly Planarize" script. Works fantastic. Not sure about bonus tools.

    http://www.funkybunnies3d.com/tools.php
    Very nice! Thanks for sharing.
  • Cathodeus
    Options
    Offline / Send Message
    Cathodeus polycounter lvl 14
    You should give a try to 'ninja dojo' it add a kind of command pannel to maya. it really helped me to move from ubisoft to EA. [Max to Maya] a few years ago. They do have a plannar ++ really better than the one in max.
Sign In or Register to comment.