Hey Everyone!
This week we’ll be looking at a common problem you’ll run into when modeling and animating in 3d Studio Max. When you apply a transformation to an object, a lot of the time 3dsMax won’t actually modify the object so much as add a “phantom” modifier to the stack. This can have some serious consequences when you change the pivot of your object (or worse, when an animation constraint does it for you). It’s often called object skewing, or object slanting. It’s where your model gets distorted when you move, rotate, or scale it. In this Monday Movie, I’ll show you how to recognize the problem, fix it if it comes up, and prevent it from ever happening again.
By red pill junkie May 4, 2009 - 11:19 am
I’ve been exporting models from AutoCad to 3DMax for more than 10 years; and I’d never —EVER— come across the Reset X-form modifier. No one had explained it to me, and there is certainly any mention of it on the help files of both AutoCad & Max, or any book I’ve read!
So, let me see if I understood: whenever I import some model from AutoCad, the very first thing I need to do to the objects once they show up on the Max windows, is apply the Reset X-form?
You also mentioned to me that it’s a good idea to group the objects and move them to the origin point in Max . The problem with this is that in AutoCad you are never that mindful about where you start to draw your objects —you start drawing a rectangle or whatever anywhere and you progress from there; and everybody does that— so the problem comes when you start importing objects to Max, and then you go and move them to the origin point: you might need to add or replace something in your original AutoCad file, and then if you want to update the Max geometry with the new Cad info, Max will import it and show it according to the coordinates in AutoCad. So if you moved things in Max, you’re gonna have a problem aligning the new objects with the old ones —specially if you are only used to using Max for renders and not really for modelling.
Maybe what I’d need to do is create a backup AutoCad file where I move everything to 0,0,0. I’ll try to do that when I get back to the office —we’re still on quarantine because of the flu.
Once again Muchas Gracias for explaining all this to me, Mr Bluesummers. To use a —somewhat vulgar— Mexican phrase: Eres un chingón! (rough translation: You rock!) 🙂
By Bluesummers May 7, 2009 - 12:09 am
That sounds right, RPJ.
The nature of the XForms problem is that the object in memory is different from the object as it appears in 3dsMax. When I was working on your file, this manifested itself as objects “jumping” when I moved them. In fact, if you take the original file, and try to group all of the building’s objects together (instead of attaching them), you’ll see everything shift out of place. Hitting ‘undo’ won’t fix it, either; you have to re-load the file (which is why XForms are so dangerous and can ruin projects).
By attaching objects together (as sub-objects) or by using the Reset XForms modifier, you’re boiling off a lot of the meta-data (like pesky transforms) leaving only polygons and information that 3dsMax can clearly determine (like the bounding box, the position, etc).
As for the import/export weirdness, that is rather unusual. You’re probably right that it’s an issue with CAD’s original position. It could be an artifact of your units settings. Does AutoCad use meters? Did your file use Generic Max Units? I’d do a tutorial on the process, but (I admit) I know very little about AutoCad.
Thanks again for your kind words (and donation). You’re the reason I do what I do. ^__^
P.S. I’ll be visiting Argentina with my family in December. Maybe I should start practicing my Spanish with you through the blog- A Monday Movie con surtitulos?
By red pill junkie May 7, 2009 - 10:20 pm
Oh, yes: Units. One of the most confusing things in AutoCad.
Technically you can assign a unit to your file. But in my 12 years or so using this program, I’ve yet to find anyone who actually does that. Maybe a reason for this is that we all use the metric system around here, so a line of 10 units can either be 10 meters, 10 centimeters or 10 millimeters, depending on what you’re drawing —for architects all units are meters.
This used to be a problem when exporting things to MAX, since you had to remember asking MAX not to convert the units of the models. In any case, I used generic units with Max, and specified that I was using meters with photometric lights (and since I seldom used those, it wasn’t much of a problem).
So yeah, I think this is a bug they haven’t had time to trap. Maybe because there aren’t a lot of AutoCad users that are experimenting with Mental Ray —I mean, one just learns how to acquire fairly decent renders with Radiosity, and now you have to start from scratch with your bell curve of learning! maybe not all the architects have the patience for that 😉
I’m sure you & your family will have a great time in Argentina. I haven’t gone there myself yet, but my parents went a couple of years ago and they were delighted.
If you want to try the subtitles be my guest! Although to tell you the truth, most of the people I know here in Mexico never use neither AutoCad nor 3dsmax in Spanish. It may sound kind of strange, but learning the commands in English is more intuitive than figuring out the translations, which are made with the Spanish of Spain —for you guys it would be like trying to read a coffee-maker manual written in British English 😛
PS: Be sure to try the alfajores when you go to a restaurant in Argentina. And don’t forget to visit the Palermo neighborhood 😉
By Danijel August 11, 2010 - 2:55 pm
HI!
I see you’re good at 3ds Max so maybe you can help me…
I’m using 3ds Max for almost a year now and it worked just fine until now….It sounds really stupid since that’s a basic thing, but I can’t make a blueprint. So it’s a standard procedure(create a plane-material editor-bitmap…). Problem is that all images are terribly blurry when I put them in 3ds Max, in other words – useless!!! It’s driving me nuts. I can’t figure out why’s that happening. Planes are right size and images too so something else is not working well and I don’t know what is it…Would it help if I re-install 3ds Max or is there some way to put it back to default settings??
By rahulchauhan January 3, 2011 - 9:49 am
when i render the file it hsows an error
By Rick July 22, 2011 - 1:37 am
@ Danijel
I hope you have solved your problem by now, but if you didn’t, i think i know where is your problem.
Go to Customize -> Preferences, tab “Viewports”, button “Configure Driver”,
and there at “Background texture size” check either 512 or 1024, and “Match bitmap size as closely as posible”,
and try Texel Lookup: “Linear”, and MipMap Lookup: “Nearest” or something like that.
Or try choosing another driver in “Vieports” tab.
I am not sure what option exactly solved it for me (try them one by one or something), but i think that there is the solution for your problem 🙂
By Frank August 24, 2011 - 9:48 am
Brilliant Tutorial, Reset Xform has just saved my life, it would seem it that it fixes corrupt UV mapping data also!
I just had feed back from a developer that race ciruuit I built for an IOS racer had run in to some serious UV mapping problems in the Unity editor, he was unable to correctly generate the second set of UV co-ordinates for the Shaddow maps and ambient occlusions and the UV unwrapping results were completley screwed!
A few tests in Max’s own UV editor and the render to texture settings proved that he was right, there was indeed a seriouse issue with the mesh, UV unwrapping was was not working as it should.
(I nnow think this has alot to do with the fact I started this project in Blender – then later exported to Max.)
Any way long story story short, resetomg Xform fixed the problems, both Max and Unity can now unwrap correctly.
God bless the poster of this tutorial and 3ds Max for throwing me yet another life line :-). No matter how many years i work with it, I never stop making new discoveries. MAX never ceases to amaze me.
By Perfect December 21, 2011 - 9:32 am
THANK YOU! finally, demystified the xform.
By Jester Black February 9, 2012 - 7:27 pm
I have a question: When I am working in 3dMax and I applied my textures to the object(s) that needs the textures, then I am going to export them as a FBX into Unity. When I export the FBX into Unity and set the scale factor to 1, it does not look right. I was told that my X-forms needs to be reset. This may be a carzy question but how do I reset the x-forms? Do I need to reset my rotation to 90 degrees on the x axis or the y axis? Give me some advice, friend.