Smart Pooling View on Asset Store (opens in new tab)

Package details

Latest version
2.0.0
Last updated
First released
Unity version
2022.3.22 or later
Package size
539 KB
Files
27
Favorites
1
Views in the past week
7

Price tracking

Last checked
Tracked since
Lowest recorded
$12.00 on

Keywords

Smart Pooling

by Shawk Studios (opens in new tab)

No ratings yet

Key-based object pooling for Unity that replaces Instantiate with one call and learns how many objects your game needs, so heavy moments don't instantiate anything.

Price $24.00

Buy on Asset Store (opens in new tab)

Affiliate link · Purchases support this site

Price history

Last 6 months

USD
Price history for Smart Pooling, 6 months Current $24.00; lowest $24.00; highest $24.00 in this period. $0 $12.5 $25 Jun Jul Aug Sep Oct Nov Version 2.0.0 released 9 Oct 2026 v2.0.0

Asset preview

1 / 3

Smart Pooling screenshot 1

Smart Pooling screenshot 1

About this asset

Instantiate and Destroy in gameplay cause spikes and garbage. Smart Pooling replaces them with a pool that needs no setup in your scenes and prepares itself from how your game is actually played.

Key features

  • Key-based pools: add a Poolable component to a prefab, give it a unique key and call PoolManager.Get instead of Instantiate. No pool objects to place in scenes, no setup code.
  • Smart prewarming: the highest number of objects in use at the same time is recorded per session, and the average over sessions is created when the game starts, so the first heavy moment doesn't instantiate anything. Fixed initial counts and PoolManager.Prewarm are available too.
  • Survives scene changes: returned objects are parked under a DontDestroyOnLoad root, and PoolManager.LoadScene returns everything first, so nothing is destroyed with the old scene. Additive scenes and persistent owners are supported.
  • Safe by design: objects are reset to their prefab transform on return, stale timers can't return objects that are in use again, and PooledRef<T> tells you when an object you hold has gone back to the pool.
  • Fast: Get is O(1) and allocation-free after warm-up. Components can be cached per object with Get<T>.
  • Editor tools: the Pool Manager window keeps the smart pooling registry up to date, validates keys and, in Play Mode, lists spawned, free and active objects for every pool. Clear console messages name the cause and fix of common mistakes such as destroyed pooled objects, key collisions or missing settings.

How it works

  1. Add a Poolable component to a prefab and give it a unique key.
  2. Get an object: var bullet = PoolManager.Get(bulletPrefab);
  3. Return it: bullet.SendPool(), bullet.SendPoolAsync(2f) or enable Auto Destroy on the Poolable.

What's included

  • Runtime and editor code with their own assembly definitions (ShawkStudios.SmartPooling, ShawkStudios.SmartPooling.Editor)
  • Pool Manager window and Pool Settings asset
  • Demo scene with prefabs and script
  • Offline documentation (PDF)
  • AI Instructions.md: a usage guide for AI coding assistants

Requirements

  • Unity 6 (6000.3) or newer
  • Render pipeline: any, the pooling code has no rendering code; demo materials use URP Lit and appear pink in Built-in or HDRP projects
  • Dependencies: none (pure C#); works with Enter Play Mode Options (domain reload disabled)

Documentation and support

  • Offline documentation (PDF) included, also opened from the Pool Manager window.
  • Support: Discord (link in the Pool Manager window).

Updating from 1.0: existing prefabs, Pool Settings and smart pooling data keep working; script GUIDs, serialized field names and the save file are unchanged. Version 2.0.0 requires Unity 6.

This asset was developed with AI assistance and reviewed by Shawk Studios.

From the publisher's Asset Store listing.

Technical details

  • Namespace and assembly: ShawkStudios.SmartPooling
  • Menu: Tools > Shawk Studios > Object Pooling
  • Events: OnSpawn and OnPooled UnityEvents on every Poolable
  • Smart pooling data: Application.persistentDataPath/shawkPooling.json
  • Works with domain reload disabled

Documentation

Discord

Compatibility

Render pipelines supported in each Unity version
Unity version Built-in URP HDRP Custom
6000.3.9f1 Compatible Compatible Compatible Compatible
2022.3.22f1 Compatible Compatible Compatible Compatible

The pooling code is pipeline-independent and works with Built-in, URP, HDRP and custom render pipelines. The demo materials use URP Lit and appear pink in Built-in or HDRP projects; assign your own materials there.

As listed on the Asset Store.