Skip to main content
Version: 5.x
Supported on
Snapchat
Spectacles
Camera Kit

Asset Library Publishing Guide

This guide will walk you through the steps necessary to prepare your assets for publishing on the Lens Studio Asset Library, from formatting your files to ensuring that your assets meet our quality standards. By following these guidelines, you'll increase the chances that your asset will be approved for publishing and will be used by other creators to create amazing AR experiences.

Please note that by submitting your assets to the Lens Studio Asset Library, they will be published under your Snapchat account name.

General Directions

A good and viable asset is a versatile building block that can be used in various ways. For instance, if you are creating a texture pack, provide several different example use cases. For materials, you should provide some customizable inputs so others can fine tune your materials to fit their needs. For 3D assets, you should allow for several variations or animations that would inspire and enable creators to work on their projects.

Asset Library supports regular assets (scene hierarchies and resources) and installable content (such as custom components, installable packages and plugins).

Asset Export

Asset Packages are the most convenient way to distribute reusable building blocks. Even if you decide to submit single asset files that can be imported to Lens Studio we prefer you to import them to Lens Studio yourself and follow the next steps to package them.

Name

Pick a descriptive and somewhat unique name for your asset. You should make sure it is obvious and describes the asset well.

Resource Organization

Easiest way to do so is to use the Organize Folder Structure option. (Right click in the Asset Browser). And then place all folders into a parent folder that matches your asset name. For example:

Scene Organization

If applicable - parent all scene objects included into your asset under one object and name it accordingly.

Once done - drag scene object into the Asset Browser to create a prefab.

Append an instruction to the prefab name: - __PLACE_IN_SCENE - __PLACE_IN_ORTHO_CAM - __PLACE_UNDER_MAIN_CAM or etc.

Create Package

Right click on the main folder in the Asset Browser and select Create Package.

Select the package in Asset Browser, rename it and fill out Description, Icon, and Version fields in the Inspector panel to provide useful information about your asset.

Export Package

Right click on the asset package in Inspector panel and select Export. Select whether you want your package to be Editable or not. We always suggest to allow editing to allow more flexibility.

Open a new project and double check your asset before uploading it to make sure everything will be imported correctly.

Installable Content Export

Lens Studio supports several kinds of content that are installed into Lens Studio rather than imported to your project. They are Custom Components, Installable Packages and Plugins.

Custom Components

Custom Components are a type of component within Lens Studio that is created from a script and includes all the resources needed in order for the script to work. This allows Lens Developers to bundle together script and resources in a convenient package.

When exporting a custom component all referenced resources will be packaged inside automatically. Please fill out required fields of your Script component in asset inspector.

alt text

Then right click and select Export. Select Editable or Locked to either allow users to customize your component or not.

Plugins

Please check out Plugins development guides. Once plugin is ready - zip up the plugin folder.

alt text

When submitting make sure your plugin name exactly matches the asset name and optionally reflect how user should access your plugin in asset thumbnail:

alt text

Resource Guidelines

Your asset usually contains multiple resources. In order to provide reusable and easy to understand content on Asset Library we ask you to prepare them following instructions below.

  • Scripts / Custom Components:

    • Putting comments or JSDoc annotations is a great way to help others use what you've built.
    • Make sure your script is versioned and attributed.
    • If using third party scripts or script modules, please make sure the license allows this. If unsure, please let us know when submitting.
  • Textures:

    • Keep texture files as small as possible
    • If you are creating a texture pack, please add textures to Asset Browser, place them into a folder and create a package
  • Materials:

    • All materials used in the asset should be Graph materials. Please refer to the Material Editor guides for more information.

    • All material parameters should have meaningful Title and Script Name.

    • Make sure the material graph is readable and not tangled, use subgraphs or code nodes where possible.

    • Add comment node if needed to group nodes and explain what they do

    • Utilize Sticky Note for leaving longer multi line comments

  • VFX Assets:

    • Good VFX assets benefit from the same things that make a good Material, but with a few more things to consider:

    • Use the least number of particles possible to achieve your goal. Try to never publish VFX assets with more than 50,000 max particles.

    • Make use of subgraphs and code nodes that go directly on the Spawn, Update, and Output containers to keep the graph area clean and readable.

    • Refer to the VFX Graph Optimization page for tips on how to keep your VFX systems running smoothly

  • 3D Assets: Please follow these general directions before bringing your 3D model to Lens Studio:

    • Try to keep your models under 100,000 triangles , or 60,000 triangles for meshes with joints/skinning for best performance.
    • Name all your meshes and bones nicely and descriptively, merge meshes that can be merged to simplify.
    • Place pivot to the object center or another point that would allow to easily manipulate object in scene panel.
    • Reset or Apply all Transforms if possible.
    • Make sure normals are facing the right direction.
    • Meshes need to have a UV map and texture for use in Lens Studio.
    • If you want to add additional detail to your model, it is recommended to use a normal map texture.
    • If object is animated - make sure to not use Legacy Import option. Your animated object should have Animation Player component (not deprecated animation mixer)
    • For animation, configure your tool's time unit to be 30 FPS (frames per second) and make sure to export whole range of animation frames.

Submitting

Please log in to My Lenses and navigate to Lens Studio Assets in the left sidebar.

alt text

Then click on the Create Asset button in the top left corner.

Asset

In the Asset section of the submission form click on Upload Asset button and select your .lspkg, .lsc or .zip file.

Thumbnail

In the Thumbnail section click on the Upload Photo button and select your asset preview image.

A preview image of your asset that will be the user's first impression. Please make sure it is engaging, reflects your asset well and fits a colorful Asset Library aesthetic.

Please export your image as a 512 x 512 px png file preferably on a transparent background. Allow some space around the subject for UI elements.

Here are a couple additional references for you to use (right click on image -> Save Image As):

Description

Provide a short description of your asset, for example:

"World Object Controller allows you to add a 3D object to the world that the user can walk towards and around. This tool gives you access to manipulation control which allows the user to move, scale and rotate the object."

You may also include words that could be used to find your asset. If it consists of several elements, list out their names so they can be used for search.

Provide useful links that would provide some context for your asset (Guide, Template, etc)

Category

Select the most relevant category for your asset. Make sure you use correct category for installable content.

This can be a Lens Studio guide that covers the essential components used in your passer or your own resource link.

Version

Please set Min Version to the one you used to create your asset. It is recommended to always use the latest Lens Studio available. If you are not sure about Max Version leave it empty.

Questions

If you have any questions or concerns about the asset submission process, please don't hesitate to contact our support team at lensstudio-support@snapchat.com

Was this page helpful?
Yes
No