Home Technical Talk

How do you reset the "subobject" gizmo orientation?

EZ all, I've had this problem a few times before but never got round to asking about it. Basically whats happening, is I'll be editing/modelling an object, or part of it, and while I'm in any given subobject mode, the gizmo can sometimes become "stuck" in an off-axis position, while the standard object mode gizmo is perfectly normal and aligned.

In other words, when no subobject mode is selected, the gizmo is as it should be, but if I was in say, edge, or vert mode, the gizmo is all crooked and tilted in some way. Another problem that comes with this, is that all the axis become randomly swapped. So if I want to pull a face up on the Z-axis, I'll have to use another axis, because Z has become Y, and Y has become X and so on. Really weird

I've never found a way of fixing this once it happens (Resetting X-forms doesn't work, neither does resetting the pivot in the heirarchy). I've also never managed to ascertain what actually causes this to happen. I've got a feeling that its caused by editing an object thats already been rotated, meaning I have to use the "local axis" to edit the object as if it was zeroed out (all nice n straight), then for some reason max gets confused and cant work out left from right anymore.

Thanks in advance!

Replies

  • Eric Chadwick
    Options
    Offline / Send Message
    This is caused by using non-uniform scale on a model when it is NOT in sub-object mode.

    Reset Xform always fixes this, always. Unless you have Skin applied, or some crazy modifier setup like World Space deformers.

    Make sure you exit sub-object mode first (so it doesn't apply the Xform modifier only to the selection), use the Reset Xform utility, then Collapse the modifier stack.
  • poopipe
    Options
    Offline / Send Message
    poopipe grand marshal polycounter
    I think I'm right in saying inherited non-uniform scale could cause what Eric's describing as well (really can't be bothered to check atm)

    However, I'm not sure this is what he's talking about

    OP - are you in local coordinate space? cos that puts the gizmo in the space of the selected subobject which isn't always logical - it'll generally behave nicely on polygons, single verts or full loops but anything else gets a bit weird right? .

    The behaviour of this feature changed (broke?) slightly between max9 and max2008 which infuriated the hell out of me til I started using the constraints in edit poly instead.
  • Eric Chadwick
    Options
    Offline / Send Message
    Ah yeah, that's probably it. This here.

    GUID-A895EA49-EA4D-4163-BE23-D41D9EB148D1-low.png

    Probably set to Local. You might want World instead, depending. Here's the help file
    http://download.autodesk.com/us/3dsmax/2012help/index.html?url=files/GUID-0F3E2822-9296-42E5-A572-B600884B07E-298.htm,topicNumber=d28e58766


    I use a script from Jim Jagger called "[FONT=Arial, Helvetica, sans-serif][FONT=Arial, Helvetica, sans-serif]Cycle Coordinate System" [/FONT][/FONT]to cycle them quickly, very handy...
    http://www.jimjagger.com/Pages/Tools/JJTools_Complete2012.htm


    Also I wrote a quick script that cycles the coordinate center. This and the Reference Coord System work well together. Coordinate Center = these buttons:
    GUID-564C51A3-3F34-44D5-A6D9-2D506547A762-low.png
    macroScript UseCenterCycle
    category:"Tools"
    Buttontext:"UseCenterCycle"
    tooltip:"Cycle the Coordinate Center"
    (
        global centerstate = 1
        
        on execute do
        (    
            case of
            (
                (centerstate == 1): (toolMode.transformCenter()
                                   centerstate = 2)
                (centerstate == 2): (toolMode.selectionCenter()
                                   centerstate = 3)
                (centerstate == 3): (toolMode.pivotCenter()
                                   centerstate = 1)
            )                       
        )
    )
    
  • Shuriken UK
    Options
    Offline / Send Message
    Yea thats it, I was using the "local" coordinate space, but switching between that and world to suit my needs. Its giving me a lot of grief lol. I tried a few different remedies, such as one that I learn't from here, where you attach another object, then delete the new object, which is said to usually flush out any problems, and I also tried resetting X-forms a few times, and STL check too, but it didn't work. The only thing that worked was deleting the object and starting again. Luckily it was a VERY simple cylinder based object, so it only took a minute or two.

    Thanks for the scripts too! They should DEFINITELY come in handy! I'll have to remember not to switch between Local & other coordinates too much, while modelling the same object from now on!

    cheers
  • Eric Chadwick
    Options
    Offline / Send Message
    Cool. Sounds like you had a different problem though, you should never have to delete and recreate to solve something like this. Sounds more like a misunderstanding of how the gizmo orientation works. A screenshot would help a ton.
  • poopipe
    Options
    Offline / Send Message
    poopipe grand marshal polycounter
    switching coordinate systems doesn't have any effect other than changing the orientation of the gizmo.

    I do think there's an issue in editable poly where local space coordinate system gets out of synch with what you think are the vertex/edge normals - this only seems to occur in edge and vertex mode whereas with faces the averaged normal of all the verts is used in local mode and getting that wrong is probably impossible.

    every time I try and prove the above to somebody it all works perfectly and they call me paranoid so instead of bitching about it I now use the constraint toggles in editable poly instead of switching coordinate systems
  • Eric Chadwick
    Options
    Offline / Send Message
    No, I getcha. The gizmo is shit on selected stuff in Local mode. Would be nice at least if Z pointed out the face normal, but noooooo.
Sign In or Register to comment.