Reference Roblox Integration for Blender

UPDATE 8/5/2024: New support topic

Original post

Hello Creators,

At Roblox, we are committed to giving you access to any tool that helps unlock your creativity. To enable this, we have been focused on expanding our Open Cloud APIs to support bringing more types of content from outside Roblox, into Roblox.

To demonstrate the power of our Open Cloud ecosystem, we’ve created an open-source reference Roblox integration for Blender. Blender is one of the most used tools by our community and we wanted to create faster and better interoperability with Studio.

With this add-on, you can:

  • Upload 3D Models to Roblox, without leaving Blender. This includes rigged models, and we’ll be adding animation support soon.
  • Iterate on these models in Blender, and see your updates translate to Roblox near instantaneously thanks to Package Auto Update. Be sure to enable this!
  • Work on large scenes made up of multiple models, and upload them all simultaneously.

Please note, this is sample code and not an official Roblox product.

You can download this add-on from GitHub: Roblox Blender Add-On. To install into Blender, follow the installation steps in the README file.

Focused on making Open Cloud work for you

This blender reference implementation is our latest step in building an open ecosystem using our Open Cloud APIs. In March, we announced the release of our Open Cloud Assets API, which made it possible for any tool to upload 3D model files as Roblox packages. Then, in June, we announced support for OAuth2 Authentication for Open Cloud Endpoints, meaning external tools could easily authenticate Roblox users without requiring users to keep track of API keys.

Our goal is to provide a useful demonstration of the power of our Open Cloud APIs and to provide a foundation for the community to build on top of. We’ll merge in fixes for any bugs we identify, but we’d love to see a community fork emerge with richer features.

We look forward to sharing more of our plans around opening up our ecosystem to external tools at RDC.

Thank you.

674 Likes

This topic was automatically opened after 10 minutes.

Hey, this looks great. Im assuming it still follows the same engine constraints when it comes to procedural shading though? Im going to test it out and edit this to see whether it is functional.

77 Likes

Yes, the import code that runs on the cloud API is 99% identical to the code for the “Import 3D” tool in Studio.

You should expect identical results from importing via the Assets API (which this plugin uses) and in Studio using “Import 3D”.

62 Likes

Oh, so it’s a tool just to hasten the process?

49 Likes

Oh dang, this is awesome! It’ll save so much time being able to automatically upload meshes and their changes, rather than exporting and importing manually. :smile:

When the mesh is updated, does it overwrite the original mesh in the user’s inventory, or does it create a new one? I find my inventory is cluttered with duplicate meshes that I’ve had to reupload for various reasons and with no way to archive them it’s a pain to find the correct version.

52 Likes

This is amazing! I can quickly update stuff without having to use asset manager every time.

44 Likes

Looks promising. This will definitively save some time and hassle. Especially if I need to adjust meshes without reuploading new ones every time.

39 Likes

This is very useful, im recently getting to use blender more and more, this will for sure help a lot by making the workflow of creating and editing meshes faster.

35 Likes

This is one heck of something! Hope this turns out super useful, and saves time on uploading and all that nonsense. :+1::+1:

28 Likes

this is the next best thing to in-studio modeling :+1:

33 Likes

I’ve been waiting for this ever since I saw it last year :heart_eyes: and it’s finally here. This will definitely save a ton of time and it’s an amazing resource to expand into other 3D art software, I love it!

28 Likes

This is really cool! My team uses Blender heavily for our animation and modeling workflows and we’re looking very much forward to how Open Cloud can be used to unlock our creative capabilities as well as how we can build our own tools to interop with Roblox. I’m very much looking forward to the same being offered for programmers and our CI/CD workflows (or simply Rojo).

We’ve been very reliant on the community-built Blender animation importer as Roblox has shown more interest in supporting third party workflows and power tools (contrary to former belief); being able to import 3D models was already a huge bonus as our avatars and worlds are heavily reliant on meshes created in-house with our team.

Seeing the engineering effort towards providing us the APIs to build our own tools to interface directly with the cloud and Roblox will move development forward by leaps and bounds. Thank you!!!

29 Likes

This is amazing, I literally just created my first donut mesh using Blender today and I can’t wait to create more meshes.

Although I do feel bad for the team who made the 3D importer, since it’s more-or-less a little redundant.

Edit: Rigging and other advanced features are still going to need the 3D importer.

21 Likes

Hey! The team that made the 3D importer also made the API this plugin uses :smiley: (the API is built on the same code as the 3D importer)

32 Likes

Are there plans for native VSCode and Figma plugins? Moving the stuff over is the only thing stopping me from suing both of those apps, their solutions are so much better than Roblox’s built in ones.

For VSCode I’d love full autocomplete and auto save/export to Studio, and for Figma I’d just like a 1:1 port of the UI with any image effects like blur applied.

26 Likes

This is awesome!

Hoping we see more 3rd party tooling support like this for things like code editors

20 Likes

This’ll be a great help for my friend who uses Blender!

21 Likes

Roblox supporting third-party tools? What?

It would be nice if we got official documentation on Roblox formats (especially RBXL/M and the mesh format). If Roblox wants developers to use open-cloud, I feel like this would be useful for knowing what to upload to the endpoints.

that and proper language server integration

23 Likes

This plugin leverages packages, so in your inventory, it should just overwrite the package.

Say you are working on the same file and upload 10 versions of it, you should only have 1 asset in your inventory and it will have 10 versions.

18 Likes