IMVU FBX import Scaling

Spread the love

Due to the way FBX handles object scale and size, exporting content from IMVU using the available standard templates and starter files typically results in extremely large products in Create Mode. To address this objects need to be changed, which can be done quite easily in Blender or IMVU.

Familiarity with Blender and creating products for IMVU is highly recommended for best results.

The following material does not discuss making the game model/mesh seen in IMVU, i.e. ‘chair’, ‘lamp’, ‘bed’ or other visual element Users actually see in game/client. To learn how to mesh and make model in Blender click here.

Introduction

The FBX format, being a product of the same company that develops 3D Studio Max, favours the use of a metric measurement system that tends to cause issues for assets exported from Blender because, whilst Blenders measurement system is decimal, its not metric by default, leading models, skeletons, animations etcetera to be disproportionately large on import into IMVU if the disparity is not compensated for between the two programs and the file format. This essentially means a mesh object, a block measuring 23 (2x2x2) units in Blender, imports as 23 metres in FBX and IMVU, which might then make the object grossly oversized.

Important: the default starter and example files are correctly sized/scaled relative to Blender and 3D Studio Max and should not/do not need to be altered.

To solve the problem one of three options can be used, to;

  1. change scale at EXPORT from Blender.
  2. change scale at IMPORT into IMVU.
  3. make changes to Blenders UNITS system.

Design note: the differences in scale between FBX, Blender and IMVU is largely ‘interpretive’. In other words, whilst Blender and IMVU use decimal measurement systems, the ‘value’ attributed to each unit, i.e. what the number represent, defaults to just raw numerical values in Blender, and those same numbers being representative of a unit ‘type’ in FBX and IMVU, in this instance the ‘Metric’ system.

Imported into IMVU with change results is overly largel assets

When imported into IMVU using both the same export scale from Blender and import scale into IMVU, assets will load disproportionately large (approximately 100x actual size) due to differences in the way BLender, IMVU and the FBX format handle size and what numerical values are relative to

Setting Export Scale

To ensure assets exported from Blender are correctly scaled relative to IMVU on import, select all the items to be exported as normal then in the FBX export dialogue/file browser ("File » Export » FBX (.fbx)") left-click the "Scale:" input text box and change the value typing "0.01" ("Scale: 0.01"). Press "Enter" to confirm then left-click the "Export FBX" button top-right. Blender will parse the scene down-scaling by 99% to 1%.

Design note: prior to export make sure that "Apply » Rotation & Scale" is used to reset the selected objects "Dimensions:" and "Scale:" values.

When loaded into IMVU using the FBX import feature, after import leave the "Apply scale:" value at the default "1.0", then click "Import". The FBX file will be loaded and after using "Apply Changes", will be immediately available for use correctly scaled relative to IMVU and the product type.

The furniture item to be exported to IMVU showing mesh and nodes

The default scene objects selected for export, in this instance a simple high-back furniture item with pose spots/seat nodes

On export from Blender change the "Scale:" value to "0.01"

On export, to reduce the model set the "Scale:" value under "Main" in the "Export FBX" properties bottom-left to "0.01" and export

On import into IMVU leave "Apply scaling:" at "1.0"

When addressing scale differences during export from Blender, the "Apply scaling:" value in IMVU can be left untouched – upon import the assets will be correctly scaled relative to the scene and product (note: default chair mesh is shown as it’s not yet been replaced by the assets being imported/the import process is not yet complete for the defaults to have been replaced)

Setting Import Scale

To ensure assets imported into IMVU are correctly sized when exported from Blender using the default "Scaling:" value, select all the items to be exported from Blender, then in the File Browser that appears (after clicking "File » Export » FBX (.fbx)"), set the "Export FBX" options making sure to leave the "Scale:" value at "1.00" ("Scale: 1.00") before then left-clicking the "Export FBX" button top-right. Blender will process the scene as it is, producing an FBX file.

Design note: as with furniture items generally, make sure materials, UV maps and textures (images) are applied with proper numerical identifiers are assigned.

With an FBX now available, load the file into the project and then set the "Apply scale:" value to "0.01" ("Apply scale: 0.01"). Check any other setting, click "Import", then once the file has been converted, "Apply Changes" as normal making the assets available for further editing.

To use IMVU import settings first export from Blender actual size ("Scale: 1.00")

To load assets into IMVU using a scale value set during import, first export product items from Blender with "Scale:" set to "1.00" (the default value)…

Then on loading into IMVU set "Apply scale:" to "0.01"

… once the FBX file is generated this can then load loaded into the "fbx import" feature and "Apply scale:" set to "0.01" (1% of the original scaling). When converted, meshes, armature and other product elements will be correctly sized and set up ready for use (note: default chair mesh is shown as it’s not yet been replaced by the assets being imported/the import process is not yet complete for the defaults to have been replaced)

Setting Units Scale

To export from Blender, and import into IMVU without altering the respective scale values, Blenders "Units" system needs to be changed relative to a particular context. To do this, left-click the "Scene" Properties button and scroll down to the "Units" subsection. Here "Length:" is shown using the default "None" (no context) with a "Unit Scale:" set as "1.000000".

Design note: by default Blenders Unit system is set to "None", a decimal system where units of measurement have no inherent contextual properties, they are just numbers +[n] or [n] along the three cardinal axes.

To compensate for IMVU’s FBX scaling left-click "None" and switch to "Metric" then left-click the "Unit Scale:" input field highlighting the text and type "0.01". Press "Enter". The grid floor in the 3DView will update confirming the change.

Design note: when using this compensatory approach the grid floor of the 3DView changes to what becomes very large unit scaling. To address this, with the mouse over the 3DView, press "N" to access "Properties" (or select "View » Properties") and scroll down to the "Display" subsection. Click the black arrow to the left of the heading to reveal the settings if not visible then left-click the "Scale:" input field highlighting the text. Type "1" and press "Enter". The grid floor will update to a smaller unit display confirming the adjustment.

Once Units have been changed the grid floor will be overly large (using the starter files default settings)

After changing the unit of measurement to accommodate the FBX scaling system the original defaults change the scaling of the grid floor making it appear overly large (this greatly affects the way grid snap and object manipulation behaves)…

After changing the Unit system update grid scaling to compensate

… so to fix simple access the "Scale:" setting attributed to the grid in "View » Properties" and type "1" to bring it more in line with the modified Unit changes previously made

The starter files default "Units" settings

Blenders measurement system can be found in "Scene" properties, left-click to expose then scroll down to the "Units" subsection which shows "Length: None" as the default value…

Units settings changed to "Metric" and scaled down to "0.01"

this needs to be changed to "Metric" with "Unit Scale:" set to "0.01"

Video

Overview of node based furniture items being set up to compensate for scale differences on export from Blender, import into IMVU, or using compatible Units of measurement.

[Duration: c. 2 mins] overview showing how scale differences between Blender, IMVU and the FBX format can be compensated for on export, import or prior to either


Spread the love