Max2GlTF Scale Bug?

I upgraded to the latest Max2GLTF exporter last night, trying to fix the GLTF errors present in the console anytime a model is loaded since 4.2 release (models still load perfect but always display a malformed XML error in console, interestingly the new exporter still causes the same malformed XML console error in 4.2 release, but did not in release candidates). Anyway as soon as I upgraded my exporter last night, models that use to be normal size, now import absolutely tiny in scene, about 1/5 (ish) the size.

It has been a while since I upgraded my exporter, maybe six months. Is this a noted issue? What workaround exists? What changed to scaling since then?

Things I tried: Changing scale factor in export works sorta, but breaks sub mesh positioning within a GLTF file so all submeshes end up in odd spots; in game scaling works, but having to manually scale every model by 5 to see it seems silly; the exporter never seemed to respect max unit scale so altering that did nothing; manually scaling in max worked, but only at submesh level and doing that for well over 150 meshes, each with submeshes is :\

Anyone else noticing this?

Edit: Vitals
Max 2019
Max2GLTF V 202001207.3

adding @bghgary

I think I can confirm the issue is in the exporter (and not in babylon or my code).

I loaded both GLTF in Windows 3d Viewer (as it can open GLTF) and the grid squares dont even come close to matching, despite absolutely no alteration to this model in months, only a re-export to try to stop the console error message.

This one is “normal” size. It looks like less grid units as its not zoomed in

This one is the shrunken version. Looks like more grid units, as I am zoomed in enough for the next level of grid, but regaurdless… both images should be identical.

All my models are doing this. I have not really done work on the models in a long time. The exporter for both versions seem to have identical settings. This only started when I upgraded to the latest exporter, the prior version looks to have been downloaded sometime last dec? based on the date of the old installer I upgraded to upgrade the plugin.

Is there a fast way of reverting exporter versions using the installer? An attempt at manually installing the plugin from GIT compiled a month ago, to see when this issue first started failed miserably. Apparently dropping the files in the assembly folder as Babylons documentation shows causes issues in Max 2019?

Ping @Drigax @Guillaume_Pelletier

Hello,
Have you consider that maybe the old exporter version was not process unit at all ? I found that last scale unit update has been done in Feb 6 2020 in PR#757.
Watching the code the goal is to export the scene always in meter unit regardless of max unit.

Before this millestone, the idea was you’ve get what you have in max, regardless of metrics, an unit stay an unit. I have to discuss with the team to see why this has been done.

Now i understand this might affect the coherence of your workflow, getting meter when you wanted cm or any other metric it’s generate a smaller version of your model.

Scale field is supposed to make the tricks and let you decide how you want re-scale your scene or selected object.
For the purpose, if the scale is set, then a global transform Node is added at the top of the scene hierarchy.

The fact it’s breaks sub mesh positioning within a GLTF file is another point and something we might address. could you please push an issue with a reproductible example so we can take care of it.

in the main time you should maybe install
Release CD Release 20200130.3 · BabylonJS/Exporters · GitHub which is from january 2020.

note : hitting the “next” button at the end of the page
Releases · BabylonJS/Exporters · GitHub let you find old exporter version.

Best
G.

Got it, I must have last upgraded right before the switch over to metric units.

Note if any one else has this issue Max defaults to SYSTEM Units of inches.

These are different than working units that you first see in your max units setup.

To change system units once in the customize>units setup, change display unit scale to metric (meters), then you have to click the System Units Button and set system units to meters in the new rollout.

Without that inner value set Max will try and export inch units, regardless as to what your coordinate boxes say, leading to the funky scale issues.

I would think the change over would be required to help PBR materials, as without scale physical materials have no context of size? At any rate, now that I know whats going on I can move forward.

Thanks

2 Likes