Static Sprites
OmniShade
$14.90
$17.90
17%OFF
(no ratings)
Date |
Price |
---|---|
Date |
Price($) |
02/13(2024) |
19.95 |
02/13(2024) |
9.97 |
02/27(2024) |
19.95 |
04/10(2024) |
9.95 |
04/18(2024) |
4.99 |
04/25(2024) |
9.95 |
05/02(2024) |
4.99 |
05/13(2024) |
15.95 |
07/19(2024) |
9.95 |
08/31(2024) |
14.95 |
09/03(2024) |
15.99 |
10/21(2024) |
17.9 |
10/23(2024) |
14.9 |
11/21(2024) |
14.9 |
Jump AssetStore
Optimize Sprite rendering with static batching. Even thousands of sprites on-screen is no problem!Verified compatible through Unity 6, Unity 2023Discord Support | Forum | EmailStatic Sprites is a lite tool to optimize the rendering of non-moving sprites. The improved performance means you can now render thousands of sprites on even low-end mobile devices without a hitch!As a technical background, Unity normally dynamically batches the rendering of sprites as an optimization. Dynamic batching means it groups the geometry into similar renderable batches each frame, and this generally works pretty well for small moving geometry. However, dynamic batching is not optimal for non-moving sprites, since the CPU still does a lot of work constructing the batches each frame. If you open the Unity Profiler or Frame Stats, you can check the Dynamic Batching batched draw calls count. That is all the redundant work, since the sprites don't move.Static batching on the other hand, is much faster as it pre-generates the batches and geometry to be rendered just once. However, Unity's static batching system only works for meshes, unfortunately. Toggling the Static checkbox on sprites does nothing.That's where Static Sprites comes in. Simply attach this component to a game object, and any sprite that is in the hierarchy under it is statically batched on start. It does this automatically, intelligently combining sprites into singular meshes while respecting differing materials, textures, atlasing, colors, sorting orders and layers, and Flip XY direction.FeaturesAutomatically static batches non-moving spritesSupports differing textures, colors, materials, atlasing, sorting layer ID, sorting order, and Flip XYAPI to unbatch sprites as wellSupport for exporting combined sprites to a folder outside Play modeSee Technical Details for in-depth details.And that’s it! If you are using sprites in your game, this is an easy-win for optimization.Increase your framerate, save battery life, and render more sprites!Discord Support | Forum | EmailStatic Sprites works by disabling the SpriteRenderers on any children game objects in the hierarchy of the attached component on start, and generating new combined sprite meshes to be rendered in their place. The combined mesh contains the proper geometry and UV coordinates to render the contained sprites, and a new combined mesh is generated for each grouping of differing textures, colors, materials, sorting order, etc. The less variations you have, the better the grouping can be. In the optimal scenario, it can be just 1 drawcall rendering 1 giant mesh, if all the sprites are placed within the same atlas. This works with sprite atlasing as well, which is highly recommended when rendering sprites to achieve optimal performance.Additionally, there is support for exporting combined sprites out to a folder. This is not required for using Static Sprites, but may speed up startup times if there are a very large number of sprites to be combined.Please note that while static batching is great for performance, some care must be taken if many of the sprites will not be visible at the same time, as static batching can hinder the functionality of camera frustrum culling and cause needlessly extra vertices to be sent to the GPU.