Weird mesh errors and transforms when importing model far away from the center

21 views
Skip to first unread message

joiec...@gmail.com

unread,
Aug 4, 2023, 12:37:00 AM8/4/23
to maya_he3d
Hi there,

I have to deal with BIM model and it is super far away from the coordinates center.

When imported via FBX, the objects are kind of slightly moved, so the model itself is super wierd. And the wierdest thing is that the move and vibrate while orbiting the camera.

That leads me to a numeric digit float point or math kind of problem and not in the model itself.

This is how the model looks like in a BIM viewer:


And this is how it looks inside MAYA:


As you can see, objects are slightly moved (visually slightly, in reality they are moved dozens of centimeters)

Just in case it was just a MAYA problem, I tried the IFC importer for Blender and looks even worse:


OK, this is NOT the first time I deal with this kind of problem. Normally it fixes by just centering the pivot on the model and then moving it to ZERO coordinates and then, freezing transformations. That's all, problem solved.

BUT, this model is made of LOTS of instances, and you know, you CAN'T freeze transforms on instances.

So, how to deal with it?

Thanks in advance for your comments!
Cheers.

joiec...@gmail.com

unread,
Aug 4, 2023, 12:39:55 AM8/4/23
to maya_he3d
For some reason the images don't show up.

Here is first image:

Screenshot_7.png

Inside MAYA:

Screenshot_8.png

Inside Blender:

Screenshot_9.png

ryan harrington

unread,
Aug 4, 2023, 11:26:10 AM8/4/23
to maya_he3d

 You nailed it, it's floating point precision error. Offset your scene to the origin if possible

If your instances have fardistant transforms that are then getting offset back to the origin...once at the corrected position I'd try reparenting them into a new group with no transforms at the origin (preserve position set to off) to bypass the nested double offset. Their transforms will now be relative to the origin. That might cook the jitter into the new transforms though IDK.

Another option...I often use this script to match pivots and then you can use MASH in initial state to place instances at theose locators. select your objects of a type, run the script plug the locators into a distribute node.  This might just bake the jittered positions.

/MEL locators placed at object transforms;
ls -selection;
string $theseObjects[];
$theseObjects = `ls -selection`;
int $numObjects =(size($theseObjects));
spaceLocator -p 0 0 0;
rename "LOC0";
int $i=1;
while ($i<=$numObjects)
    {
    select -r LOC0;
    duplicate;
    select - add ($theseObjects[($i-1)]);
    parent -r;
    parent -w;
    $i++;
    };
select -r LOC0 ;
delete;

joie

unread,
Aug 7, 2023, 12:40:14 AM8/7/23
to maya...@googlegroups.com
Well, first of all I tried to just bake all instances to objects, so I could freeze transforms on the group. Then I moved the group to world ZERO coordinates and then freeze it.
That didn't change anything. OK, to be fair, objects now don't jitter when orbiting or panning, but the slightly changed position is still there, so it is indeed unusable.
So, the floating error MAY get "baked" at importing process and it won't go away even when moved to origin.
Shame on me!

Libre de virus.www.avast.com

--
You received this message because you are subscribed to a topic in the Google Groups "maya_he3d" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/maya_he3d/QQGvO-Ocs1s/unsubscribe.
To unsubscribe from this group and all its topics, send an email to maya_he3d+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/maya_he3d/876fa3de-be4c-4eab-8e83-2db43b2f8e6en%40googlegroups.com.


--
Visita mi blog: 3djoie.blogspot.com

ryan harrington

unread,
Aug 7, 2023, 3:31:08 PM8/7/23
to maya_he3d
I belive Hou has 64 bit float precision  (I don't know where I got this idea, so it might be wrong)  You might want to try importing it into Houdini, moving it to the origin and bouncing it back out.

Anthony Enos

unread,
Aug 7, 2023, 3:51:34 PM8/7/23
to maya...@googlegroups.com
Any chance you'd be able to combine the problematic geo before export? I imagine that would at least eliminate the strange positional changes that are happening on separate nodes. If you're lucky and the objects are far enough apart from each other, maybe you can extract or separate them in Maya after the fact without too much trouble.

You received this message because you are subscribed to the Google Groups "maya_he3d" group.
To unsubscribe from this group and stop receiving emails from it, send an email to maya_he3d+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/maya_he3d/25c7dce0-56ad-40c4-9557-9f5956c878c1n%40googlegroups.com.

joie

unread,
Aug 9, 2023, 6:30:27 AM8/9/23
to maya...@googlegroups.com
Thanks for your suggestions. Everything failed.
So I called the architect and asked him to position the building at the zero coordinates, and he did that.
So that really worked well, problem solved.
What would have I done if I couldn't talk to the architect I hear you asking?
I would be fucked, of course.

Reply all
Reply to author
Forward
0 new messages