Skip to main content
TikTok Effect House Platform Logo
Latest
Download
Log in
Best Practices

Technical Optimization

Effect QA Requirements

DevicePackage sizeImage sizeImage pixel size
iOS<= 5 MB< 1024 KB<= 1024 by 1024
Android<= 5 MB< 1024 KB<= 1024 by 1024
Note:
Note:

Even though an effect may pass QA, some effects may not work for lower-end devices (specifically Android devices). These effects will trigger the warning message “This effect doesn’t work with this device” to appear since they incorporate more technically demanding features. Many effects are unable to be used by some Android phones due to their devices not supporting the WebGL used in Effect House. Community Effects work on most newer iOS and Android devices and do not currently work on devices equal to or lower than the following models: Samsung Galaxy J3, LG Leon H324, Huawei Honor 4X, and Cubot J3.

Features and Capabilities

Generally, the performance of your effect may be substandard when you add more algorithms to the effect. We strongly recommend cleaning up your projects and removing any unused assets and features.

Try to combine similar effects into one component. For example, combine all stretch effects into one face stretch instead of separating them in several face stretch objects.

Generative Effects

Generative Effects have a very high impact on performance. We strongly recommend against combining Generative Effects with other many other features or using more than one Generative Effect in your effect. Doing so will cause low FPS which may subsequently fail QA.

Body Avatar Drive

Body Avatar Drive has a very high impact on performance. We strongly recommend against combining Body Avatar Drive with other features. Doing so will cause low FPS which may subsequently fail QA.

Segmentation

Segmentation has an impact on performance. We strongly recommend against combining Segmentation with too many other algorithms like Face Inset and Head Tracker. Doing so will cause lower FPS which may subsequently fail QA.

Face Inset

The more Face Inset entities you add in the scene, the lower the performance will be for the effect. We recommend setting the Face Inset Quality to 256 x 256 if there are more than four Face Inset objects.

Lighting Sources

We currently support no more than 3 lights in the scene. The performance may suffer the more lighting you add.

Asset Optimization

3D Assets

Learn about 3D assets preparation.

Model

  • Use triangle polygons and quad polygons for your models.
  • Total triangles in the entire effect should be less than 100,000 for optimal performance. For each model, the tool is limited to 50k triangles per FBX, but we recommend keeping each FBX mesh under 30k for best chances at high performance.

Rigging

  • 50 maximum joints per FBX. You can have multiple FBX files in one effect and the joint limit is only local to each FBX.
  • 4 maximum joint influences.

2D Assets

2D asset preparation

  • Suggested resolution is 512 x 512 pixels (maximum is 1024 x 1024 pixels).
  • The maximum file size for each PNG is 1 MB.
  • Try to use the Compression component to optimize imported 2D assets.
  • The suggested FPS for texture sequence is 12. Higher file sizes and lower performance can occur with higher sequence FPS.
  • Avoid using too many 2D layers in the scene, suggest combining 2D textures into one if it is possible.