Home Technical Talk

3DSmax pivot not working in editable poly, almost Impossible to model anything

polycounter lvl 4
Offline / Send Message
Pinned
AnArtAccount polycounter lvl 4
Hello,

I got a HUGE problem (I don't know if the problem is that use, but I almost can't model anything anymore) thanks to this.
My pivot is acting REALLY weird. I tried to google it but unfortunate, no luck.

I added 2 pictures to show the problem. In one of the pictures the pivot is flat (almost 2D) and in the other, its rotated. and sometimes its rotated in the x, y, and z-axis.

I hope one of you guys know what's going on because now I basicly can't work anymore and I never had this before.

Cheers! 

Replies

  • monster
    Options
    Offline / Send Message
    monster polycounter
    Have you tried Reset Xform to fix the skewing?
    And for the rotated gizmo, set the coordinate system to "World" from "Local" on the main toolbar.
  • AnArtAccount
    Options
    Offline / Send Message
    AnArtAccount polycounter lvl 4
    monster said:
    Have you tried Reset Xform to fix the skewing?
    And for the rotated gizmo, set the coordinate system to "World" from "Local" on the main toolbar.
    You sir, you are a hero! Thanks. This fixed my problem! :D
  • Mark Dygert
    Options
    Offline / Send Message
    I toggle back and forth between local, view and  world so often I put it in a double tap script.
    Tap W, E, or R once and it selects that tool. Tap it again and it switches the gizmo between the modes. Super useful it saves me a bunch of time.

    Run the script and it shows up under the Customize menu under " MyTools", where you can bind them to whatever keys you want.
    macroscript ToggleMove
    Category:" MyTools"
    toolTip:"KBS ToggleMove (Q)"
    (--MOVE
    	max move--switch to move mode first
    	global lastClickedMove-- define lastClickedMove, but we don't need to assign it to anything. 
    
    	fn RefCoordCycle_LV = (--Cycles the RefCoordsys between Local & View
    		if getRefCoordSys() == #local then (
    			Print "View"
    			toolmode.coordsys #view
    		)
    		else (
    			print "Local"
    			toolmode.coordsys #local
    		) 
    	)
    	
    	fn RefCoordCycle_LVS = (--Cycles the RefCoordsys between Local, View &Screen
    		if getRefCoordSys() == #screen then (
    			Print "View"
    			toolmode.coordsys #view
    		)
    		else (
    			if getRefCoordSys() == #hybrid then (
    				print "Local"
    				toolmode.coordsys #local
    			) 
    			else (
    				print "Screen"
    				toolmode.coordsys #screen 
    			)
    		)
    	)
    	
    	fn checklastClickedMove = (
    		local thisClickedMove = timeStamp()
    		if lastClickedMove != undefined then (
    			if (thisClickedMove - lastClickedMove) < 500 do (--adjust this value to shorten or lengthen wait time
    				max move
    				RefCoordCycle_LV()--Switch this to _LVS to cycle between Local, View & Screen
    			)
    			lastClickedMove = thisClickedMove
    		)
    		else (--switch gizmo to move, ignore pivot setting, update "lastClickedMove"
    			max move 
    			lastClickedMove = timeStamp()
    		)
    		OK		
    	)
    
    	checklastClickedMove()
    )
    
    macroscript ToggleRot
    Category:" MyTools"
    toolTip:"KBS ToggleRot (W)"
    (--ROTATION 
    	max rotate --switch to rotate mode first
    	global lastClickedRot-- define lastClickedRot, but we don't need to assign it to anything. 
    	
    	fn RefCoordCycle_LV = (--Cycles the RefCoordsys between Local & View
    		if getRefCoordSys() == #local then (
    			print "View"
    			toolmode.coordsys #view
    		)
    		else (
    			print "Local"
    			toolmode.coordsys #local
    		) 
    	)
    	
    	fn RefCoordCycle_LVS = (--Cycles the RefCoordsys between Local, View &Screen
    		if getRefCoordSys() == #screen then (
    			print "View"
    			toolmode.coordsys #view
    		)
    		else (
    			if getRefCoordSys() == #hybrid then (
    				print "Local"
    				toolmode.coordsys #local
    			) 
    			else (
    				print "Screen"
    				toolmode.coordsys #screen 
    			)
    		)
    	)
    	
    	fn checklastClickedRot = 	(
    		local thisClickedRot = timeStamp()
    		if lastClickedRot != undefined then (
    			if (thisClickedRot - lastClickedRot) < 500 do (--adjust this value to shorten or lengthen wait time
    				max rotate
    				RefCoordCycle_LV()--Switch this to _LVS to cycle between Local, View & Screen
    			)
    			lastClickedRot = thisClickedRot
    		)
    		else (--switch gizmo to Rot, ignore pivot setting, update "lastClickedRot"
    			max rotate
    			lastClickedRot = timeStamp()
    		)
    		OK		
    	)
    
    	checklastClickedRot()
    )
    
    macroscript ToggleScale
    Category:" MyTools"
    toolTip:"KBS ToggleScale (E)"
    (--SCALE
    	max scale--switch to scale mode first
    	-- define lastClickedScale, but we don't need to assign it to anything. 
    	global lastClickedScale
    	
    	fn RefCoordCycle_LV = (--Cycles the RefCoordsys between Local & View
    		if getRefCoordSys() == #local then (
    			print "View"
    			toolmode.coordsys #view
    		)
    		else (
    			Print "Local"
    			toolmode.coordsys #local
    		) 
    	)
    	
    	fn RefCoordCycle_LVS = (--Cycles the RefCoordsys between Local, View &Screen
    		if getRefCoordSys() == #screen then (
    			print "View"
    			toolmode.coordsys #view
    		)
    		else (
    			if getRefCoordSys() == #hybrid then (
    				Print "Local"
    				toolmode.coordsys #local
    			) 
    			else (
    				Print "Screen"
    				toolmode.coordsys #screen 
    			)
    		)
    	)
    	
    	fn checklastClickedScale = (
    		local thisClickedScale = timeStamp()
    		if lastClickedScale != undefined then (
    			if (thisClickedScale - lastClickedScale) < 500 do (--adjust this value to shorten or lengthen wait time
    				max scale
    				RefCoordCycle_LV()--Switch this to _LVS to cycle between Local, View & Screen
    				
    			)
    			lastClickedScale = thisClickedScale
    		)
    		else (--switch gizmo to Scale, ignore pivot setting, update "lastClickedScale"
    			max Scale 
    			lastClickedScale = timeStamp()
    		)
    		OK		
    	)
    
    	checklastClickedScale()
    )
    

  • AnArtAccount
    Options
    Offline / Send Message
    AnArtAccount polycounter lvl 4
    Thanks mate! Really useful!
Sign In or Register to comment.