Hi fellow Sketchfab and Unity users!
My name is Simon Kratz and in this quick tutorial I will explain how to use the new and improved Sketchfab plugin for Unity users. With this updated version you now have a plugin that:
- supports PBR workflow in Unity
- transfers all material settings and textures to Sketchfab
- creates a clean new model file from your selection (even from Unity-generated mesh renderers)
- uses a direct login system (no API token necessary)
- can further be customised and extended via coding since all the source files are available
We will cover all of the steps necessary to get your model from Unity right into Sketchfab. Starting with the installation of the plugin we will discuss setting up materials in Unity and do some final tweaks for a consistent look in the Sketchfab 3D editor.
With the release of the new plugin, and PBR as the standard for real-time rendering, there is now a proper pipeline to bring your 3D art from Unity straight into Sketchfab.
Let’s take a look at how it works!
First download the new Unity Exporter from here, install it into your project like any other .unitypackage file (using Assets ->Import Package-> Custom Package… ) and wait a tiny moment for Unity to compile all the scripts. In your project you should find a new item called “Tools” at the top of the menu bar. Find “Publish to Sketchfab” here to open the plugin in a new window.
The plugin now uses a login system which means you can simply use your username and password instead of having to retrieve an API token from your account.
Setting up your art
Once logged in we are ready to go and can set up our art. As one of the lucky people who had early access to this new tool I couldn’t wait to check out what it can do. So I decided to set up one of my earlier projects in Unity and see how close to the final look I could get. If you already have your art set up in your Unity project feel free to use it and skip to Step 2.
I created a model specifically for this tutorial to really try out all the features the exporter has to offer. I just used the Unity Standard shader and all my available maps in the respective slots.The model uses Albedo, Roughness (saved into the Albedo alpha channel), Metalness, Normal, AO and Emission maps.
The material setup was just using the default Standard shader, I didn’t have to tweak a lot of settings since the textures did most of the job.
The rest of the setup was pretty straight forward. I used a simple light setup and an alpha-based drop-shadow. With the current version of the exporter lights and lightmaps are not transferred to Sketchfab. I recommend baking your lighting in an external app and composite them inside Unity with the rest of your textures using the Emission channel.
You can even use Image Effects like Bloom or Vignette for look development since Sketchfab offers the same post-processing filters. Be aware though that these won’t be exported directly. Knowing what Sketchfab can do really helps to get a feel for which features can be translated into Sketchfab.
As a general rule of thumbs: Keep in mind this is an exporter, not a converter. It will only export game objects that are actual meshes and have a Mesh Filter and a Mesh Renderer component attached (attaching a Mesh Renderer to e.g. a particle system or some other types of non-mesh objects won’t work). Also, Unity’s default Field of View is 60° while Sketchfab uses 45°. Note this difference to get the most consistent look.
Exporting your art
Once you’re satisfied with your scene, select all of the objects you wish to export. The Sketchfab exporter will recognize your selection and update the blue “Upload” button with the respective number of objects selected. Children of selected objects automatically count as selected.
You can edit the settings in the exporter window as you wish, they will be transferred to Sketchfab. Click the upload button if you’re satisfied and wait a short moment for the exporter to finish the job.
After opening the model in our Sketchfab account we should now see that all of the PBR maps and the respective material settings were transferred and set up automatically. All I had to do in my test scene was to add the post-processing filters, set a nice camera angle and edit the light set up a bit.
So that’s basically how to use the new exporter. If you’re an artist working in the Unity game engine you now have a direct way to get your creations to Sketchfab and save a lot of time since you won’t have to setup the PBR twice.
For now keep in mind that baked lightmaps in Unity and Unity-specific objects won’t be exported. Also, for best visual consistency stick to the Standard shaders since they are PBR-based which is a common rendering technique between most real-time engines.
If there are more features you’d love to see implemented or if you think you found a bug you can file a request right here.
Maybe some of the users will even tweak the exporter themselves to fit their needs. Since all of the source code ships with the package it will be interesting to see what people can do with it.
For now I hope to see lots of amazing uploads from all the game artists out there using the new Unity exporter!
Also, if you’re a member of Unity Connect feel free to connect with me, too 🙂