3D Importer - Custom Presets

Update: A performance issue has been fixed and this feature is now re-enabled

Hello Creators,

We are excited to announce a new feature for the 3D Importer to help speed up your workflows: Custom Presets!

Custom Presets allow you to save and manage different configurations of the importer settings for future use. You’ll also be able to set which preset to use as a default for later imports.

Creating a Preset

In this example, we want to create a preset to use when importing future environment assets. For this, we’d like “Anchored” to always be on and “Add Model to Inventory” to be off. We’d also like our world scale to be “CM”.

First, we’ll edit the Studio Default settings to reflect the configuration we want. “Studio Default” consists of the default configuration that the importer deduces from the incoming file.

Once we’re happy with this configuration, we can save it as a new preset by using the options in the new menu at the top right of the importer. Now, this preset will be available as an option in the dropdown to the left of the menu icon.

Finally, since we’ll be doing lots of work with environment assets, we want this to be our importer default going forward. While the preset is selected, we can click “Set preset as my default” in the menu. Now, future imports will have this preset loaded by default!

Note: You can also save the Studio Default preset or the Last Imported preset as defaults.

Here’s a quick breakdown of the other options in this new menu:

  • Reset all removes any changes to the current configuration, putting settings back in the default state for the current preset.

  • Save selection allows you to save any new changes to the importer settings into the currently selected preset.

  • Rename allows you to rename the current preset. You cannot rename the preset to an already existing preset name.

  • Delete lets you delete the current preset and puts the importer back in Studio Default, retaining the changed settings.

Custom presets do have some limitations for now. Specifically, you may only save up to 10 presets for now, and preset names are restricted to 50 characters. Presets are also saved locally, meaning you would not be able to access the same presets if using Studio on a different machine.

We’re looking at solutions to both increase these limits and allow you to use your presets anywhere, or even share them with others!

Known Issues

  • Clicking the Browse button and selecting another file can cause the custom preset dropdown to render a blank string. The preset that is loaded is Studio Default. You can select any option in the dropdown to load another preset.

  • Creating a preset may not automatically update the UI. To work around this, toggle between two presets. A fix for this will be enabled later this week.

  • File paths, like the settings on texture nodes, are not presettable and we are investigating use cases for enabling this.

What’s Next?

We will be expanding the 3D mesh importer to be able to upload multiple files at once, and then to import all assets. We’re also continuing to work on making our core import functionality available to plugins you can develop! You can expect these changes later this year.

As always, we welcome feedback and suggestions on how we can make the future of import best work for you.

Finally, we’d like to thank the engineers that built this! @iridiumegg @tasavix

And an additional thank you to everyone else who helped make this feature a reality! @HaloArbiter_101 @honeyfynch

Happy building!


All assets used in the above demos are licensed under CC BY 4.0. 8 Original assets can be found here:

144 Likes

This topic was automatically opened after 9 minutes.

Quite a good update, it will help alot of developers.

19 Likes

Yay this is neat stuff!
I just have 2 important questions.

  1. (Question might already be answered in post.)

When I import meshes to Roblox the meshes do not show up in my inventory under “Meshes” but instead under the “Models” tab.

Is this intentional or is this something that can be fixed? My inventory gets a little cluttered with models and the meshes tab is empty.

  1. When will we be able to edit existing meshes in Roblox?

    Currently, if I upload a mesh to Roblox but decide I want to edit it later, I have to reupload a mesh and replace the asset ID in everything that uses it.
    It further clutters my inventory and probably also uses unnecessary storage on Roblox’ servers.

    My assets are private, it kinda doesn’t make sense that I can’t update or delete them if I’m the only one using them.
    And I remember it being on a roadmap long ago.

16 Likes

#1 this is the intended default behavior of the importer. By default it does the following:

  • Do not create MeshPart assets for each individual mesh (that is what shows up in the mesh tab)
  • Create 1 Model asset for the entire scene (the entire contents of the FBX/glTF is contained within this one model)

The goal with this default behavior is specifically to reduce unwanted clutter. E.g. if a 3D file has 100 meshes it only creates 1 model, if it has 1000 meshes it still only creates 1 model.

If you would prefer to see each individual mesh as its own asset, you can uncheck the option Import Only as Model. Doing so will (in addition to creating the model asset) create a MeshPart asset for each individual mesh. In the case of the 100 mesh file, you will get 101 assets: 100 MeshParts, and 1 Model.

You can also disable creation of the model asset by unchecking Upload to Roblox. Disabling this option will simply insert the model in your workspace after import completes. This comes with the downside that if you delete the model from the workspace you will not be able to re-insert it from AssetManager or Toolbox (as no asset was created).

So if you would like 0 asset clutter as a result of import, make sure Import Only as Model is checked, and Upload to Roblox is unchecked.

And with this new update, you can save these setting as a preset and make it your new default :slight_smile:

#2 work is currently being done in this area so things may change in the future. But for the moment, Roblox assets that are not packages are considered immutable, allowing updated or deletion would break that assumption and break our systems.

As for editing meshes, the new EditableMesh API allows for building tools that do exactly that, check it out: Introducing in-experience Mesh & Image APIs [Studio Beta]

18 Likes

Are there any plans to have this eventually replace the asset uploading in the Asset Manager as well? As someone who primarily uses that I completely keep forgetting this much better alternative exists.

11 Likes

The Asset Manager is definitely something we have our eye on! If you have comments/suggestions, we’d love to know your thoughts.

8 Likes

Mainly I think it’d be cool if trying to upload 3d files through the asset manager would cause it to automatically bring up the 3d importer, as while the 3d importer is a much better way of importing 3d assets, I usually upload files using the asset manager’s “upload” button.

(Though on a note completely unrelated to the 3d importer I think it’d be cool if it was possible to delete things from the “recent” tab of the asset manager, as I often have to reupload an asset once or twice and this means I have to close the recents tab and search for it manually as the recents tab lacks a delete option on listed assets.)

9 Likes

I was testing this one out because it sounded like temporary files for meshes were supported with this, but I guess not…
It still creates the id, but does not appear within the user’s profile. Is that mesh id just floating around the abyss?

7 Likes

Cool update, but when we select “Upload to Roblox”, even with our inventory disabled, it still shows under our “Creations” tab in our profile. When will you actually fix this issue? It’s been a thing for years now.

7 Likes

those animations on mac…

Anyways, great feature! However, will the textures save too?

8 Likes

This is something we’re looking into. Could you describe a workflow where you would want to always use the same files for all texture nodes that are present?

8 Likes

Can you clarify what you mean by “inventory disabled”? I’m not sure I understand what that means

7 Likes

Meshes need to be assets to render in Roblox across studio sessions, these assets are created and linked to your account. However, our UIs don’t typically show raw Mesh assets. What you see in AssetManager/Toolbox are MeshPart assets

6 Likes

I think he means “who can see my inventory” is set to no one.

8 Likes

@NotRapidV

Oh, I understand, I really have no idea how the creations tab works, I would suggest filing a bug report about the inventory visibility issue.

The import team doesn’t manage any website feature

7 Likes

No problem. Thank you for responding quick! Hope to see it fixed by that team sometime in the future!

8 Likes

This is Really a nice feature so I don’t forget to anchor stuff I put in like I usually do. Very Nice!

7 Likes

My issue with that is if you want to import some type of light but you only want to Lightbulbs to work then you have to import them as different Meshes and not all as one

6 Likes

cool feature, will not be using :fire::fire::fire:

4 Likes